Inspiration
Traveling can be a way to relax and have fun, but it can also be stressful and expensive to plan a trip especially given the current economic situation. That’s why we created budgetTrip, an application that helps you find the best activities and restaurants for your dream destination. Whether you want to explore a bustling city or a tranquil nature spot, budgetTrip will help you discover amazing options that fit your wallet and your taste. With budgetTrip, you can enjoy traveling without breaking the bank or compromising on quality.
What it does
budgetTrip is a web app that lets you create your own personalized vacation itinerary. You just enter your destination, the number of days you want to stay, and your budget, and budgetTrip will generate a plan for you. For each day, you will get a recommendation for an activity and two restaurants, based on your interests and preferences. You can also customize your itinerary by choosing specific types of places you want to visit, such as amusement parks or zoos. You can save your trips to your account and view them later. You can also browse other people's trips and see what they did and how much they spent.
How we built it
We used the MERN stack (MongoDB, Express, React, and Node js) to build our web app. We used the Google Places API to get information about popular activities, restaurants, and hotels in the user's destination. We then developed a sophisticated algorithm that generates an optimal itinerary that minimizes the total cost and travel distance, while maximizing the ratings, number of reviews, and user satisfaction. We stored our data in a MongoDB database and used Express to create RESTful endpoints for our backend. We used React to create a user-friendly and responsive frontend that communicates with our backend using axios.
Challenges we Ran Into
Some of the challenges we faced were:
• dealing with unreliable wifi connection
• designing an algorithm that can handle multiple parameters and constraints and produce a valid itinerary in most cases
• integrating the frontend with the backend and ensuring data consistency
Accomplishments we’re Proud of
• We successfully built a functional and full-featured web application that can generate personalized vacation itineraries for users.
• We learned and used Chakra UI to create a beautiful and intuitive user interface that enhances the user experience.
• We managed our codebase using Git and GitHub, and resolved any merge conflicts that arose during the development process.
• We divided our work into clear and manageable tasks, and collaborated effectively as a team.
What we Learned
• We learned how to use various APIs, such as Google Maps, to get relevant and reliable information for our application.
• We learned how to split our project into frontend and backend components, and how to communicate between them using JSON.
• We learned how to use the MERN stack to build a web app from scratch.
What's next for budgetTrip
• We plan to use Expedia/Tripadvisor APIs to get more accurate pricing information for activities and restaurants.
• We plan to add support for travel costs, such as flights and car rentals, to give users a more realistic estimate of their budget.
• We plan to allow users to apply more filters, such as preferred cuisine, to customize their itinerary even further.
• We plan to make our algorithm more efficient by using Dynamic Programming Techniques.
Built With
- express.js
- javascript
- mondgodb
- node.js
- react
Log in or sign up for Devpost to join the conversation.