Inspiration

We've all experienced those tedious travel planning sessions - whether for international or domestic trips. Our team faced this exact experience while planning our summer vacation. After dealing with numerous challenges, such as finding affordable flights, nearby hotels, fun activities, and good places to eat, we realized how time-consuming and overwhelming the process can be. That's when we thought: what if there was a platform that would just do it all for us?

What it does

Planning a trip can take a whole lot of effort, but our smart trip planner makes it effortless. The user simply has to fill out a quick survey with key details such as their departing location, destination, travel dates, and any personal preferences. Based on this input, our web app generates a fully personalized itinerary that includes flights, hotels, and a daily schedule of recommended activities. To give users flexibility, the planner offers three unique itinerary options to preview. If none of them are a perfect fit, users can generate new ones with a single click. Selecting any preview displays a detailed, customized plan, all in one place. Users can also suggest changes to our chatbot to modify a chosen itinerary.

How we built it

We built our product by using numerous frameworks and technologies. We began with Figma to design the pages of our web app, along with the user flow. From there, we moved on to front-end development and implemented all our planned screens using React, Node.js, Tailwind, HTML, CSS, and JavaScript. At the same time, we worked on the back end using Python and integrated data from several APIs, including OpenStreetMap, Amadeus, and Google Gemini, to support the itinerary generation.

Challenges we ran into

One of our major challenges was finding publicly accessible APIs available to integrate with our product. It was difficult to obtain public travel data, and many APIs are either restricted or behind paywalls. Another challenge was our limited prior experience with React. Building a user interface while learning the framework at the same time was not an easy feat, but it pushed us to quickly adapt and grow.

Accomplishments that we're proud of

Despite the challenges, we stayed focused and determined and overcame every obstacle, even within a short timeframe. After extensive research, we successfully identified APIs that provided the information we needed. And although we had little prior experience with React, developing the UI while learning the framework significantly strengthened our front-end skills. Finally, for most of our team, this was our first hackathon -- and completing a full web application in just 36 hours is something we're extremely proud of.

What we learned

Throughout this project, we gained valuable technical experience across the entire tech stack. On the front end, we learned how to design user-friendly pages with Figma, build dynamic web applications using React and Node.js, and connect the front end to the back end with Python servers. On the back-end, we explored and integrated several APIs, including OpenStreetMap, Amadeus, and Google Gemini. Furthermore, we were able to experiment with incorporating machine learning into our workflow, and gained deeper insight into using Google's Gemini API for intelligent itinerary generation.

What's next for TravelBuddy

Although VenusHacks is ending, TravelBuddy is just getting started! We plan to expand the app by adding features like filtering the itinerary options by category and integrating with rental car and public transportation APIs to help users navigate their destinations on vacation. Our team is committed to continuing the development of our project and turning TravelBuddy into a full-fledged virtual travel assistant that people rely on for stress-free trip planning!

Built With

Share this project:

Updates