Wanderer is a web application that helps users discover landmarks and places of interest. It utilizes various APIs to fetch location details, images, and related information, providing a comprehensive guide to explore new places.
- Search for landmarks using Geoapify API.
- Fetch detailed information about landmarks.
- Display images of landmarks using Google Custom Search API.
- Provide Wikipedia data about landmarks.
- Pagination for search results.
- Bookmarking feature for landmarks.
-
Clone the repository:
git clone https://github.com/abdul-nishar/Wanderer.git cd Wanderer
-
Install the dependencies:
npm install
-
Create a
.env
file in the root directory and add your API keys:PARCEL_KEY=your_parcel_api_key GOOGLE_SEARCH_KEY=your_google_custom_search_api_key API_URL_PLACES=https://api.geoapify.com/v2/places API_URL_PLACES_DETAILS=https://api.geoapify.com/v2/place-details GOOGLE_CUSTOM_SEARCH_URL=https://www.googleapis.com/customsearch/v1/siterestrict ...
-
Start the development server:
npm run start
- Open your browser and navigate to
http://localhost:1234
. - Use the search bar to find landmarks.
- Click on a landmark to view detailed information, images, and Wikipedia data.
- Use the pagination controls to navigate through the search results.
- Bookmark your favorite landmarks for easy access.
Wanderer/
├── src/
│ ├── img/
│ ├── js/
│ | ├── views/
│ │ │ ├── landmarkView.js
│ │ │ ├── mapView.js
│ │ │ ├── searchView.js
│ │ │ ├── resultsView.js
│ │ │ ├── paginationView.js
│ │ │ └── bookmarkView.js
│ │ │
│ │ ├── helpers.js
│ │ ├── config.js
│ │ ├── model.js
│ │ └── controller.js
│ │
│ └── sass/
│ ├── _base.scss
│ ├── _components.scss
│ ├── _delete.scss
│ ├── _header.scss
│ ├── _preview.scss
│ ├── _landmark.scss
│ ├── _searchResults.scss
│ ├── _upload.scss
│ └── main.scss
├── .env
├── package.json
├── README.md
└── .gitignore
This project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.