Holiday Planner is an application that allows users to effortlessly plan their vacations by searching for destinations, creating planning lists, and visualizing attractions on a map. Users can easily discover tourist spots, add them to their to-see list, and organize their trips effectively.
Login: Users can create accounts and log in to access the full functionality of the application. Authentication ensures the security of user data.
User Profile: Users can set up their profiles including their name, nationality, and interests.
Home Page: The home page showcases the most popular planned trips and features a convenient search bar for users to explore destinations.
Results Page: Upon searching for a destination, users are presented with a results page where they can find attractions displayed on a map. Integration with external APIs such as Opentripmap, Wikipedia, and Google Maps provides comprehensive information about attractions.
View Attraction: Users can click on icons representing attractions on the map to view more information about them.
Add to Favorites: Users can mark attractions as favorites for future reference.
Add to Upcoming Trip: Users can add attractions to their upcoming trip itinerary.
Holiday Planner is built using the MERN (MongoDB, Express.js, React, Node.js). The choice of these technologies ensures a robust and scalable application.
Frontend: React is used to develop the frontend components, providing a smooth and interactive user interface.
Backend: Node.js with Express.js is employed to build the backend server, handling requests and responses efficiently.
Database: MongoDB serves as the database to store user profiles, trip plans, and other relevant data.
Deployment: The application is deployed on Heroku, offering a reliable hosting solution.
The project integrates with several external APIs to enhance its functionality:
Opentripmap: Provides comprehensive information about attractions and destinations. Wikipedia: Offers additional context and background information about tourist spots. Google Maps: Facilitates map visualization and navigation within the application.