Here is a project summary in your requested format.

Inspiration We were inspired by how fragmented modern travel planning is. People often have to jump between a dozen different tabs, one for AI-powered ideas, several for flight and hotel comparisons, and others for reading reviews on attractions. Our goal was to build a single, intelligent platform that unifies this entire process. We wanted to create an experience where a user could have a natural, ongoing conversation with an AI assistant, get a personalized, day-by-day itinerary, and immediately act on it with real-time flight and hotel data, all in one place.

What it does Hack Travel is an AI-powered travel planning platform. At its core, it features an intelligent assistant, built on AWS Bedrock, that you can chat with like ChatGPT. You can ask it to "plan a 5-day trip to Tokyo," and it will generate a detailed, day-by-day itinerary with real attractions and restaurants. It's context aware, so you can ask follow-up questions and it will understand. The platform also integrates real-time data from Booking.com, TripAdvisor, and Google Flights. Users can create an account (using email or Google), save their planned trips, and view their travel history.

How we built it This is a full-stack application with a decoupled architecture. The frontend is a Next.js (React) application written in TypeScript, using React Context for state management. The backend is a Node.js/Express.js server built with an MVC architecture to keep the logic organized. The "brains" of the operation come from AWS Bedrock, which powers the AI assistant. We used DynamoDB as our primary database to store user profiles, saved trips, and chat conversation histories. For authentication, we implemented a dual system: traditional email/password login using JWTs stored in HTTP-only cookies, and Google OAuth managed by Firebase. The entire cloud infrastructure is defined as code using the AWS CDK for easy deployment.

Challenges we ran into Our biggest technical challenge was handling API rate limits from the external flight data provider. The API was very strict, so we had to implement an exponential backoff strategy on the backend to gracefully retry failed requests without overwhelming the service. Another difficulty was making the AI truly context-aware. This required us to carefully design our DynamoDB schema to store conversation histories and pass the relevant context back to the Bedrock API with each new message. Finally, just managing environment variables across the frontend, backend, and infrastructure code was a significant organizational hurdle.

Accomplishments that we're proud of We're most proud of the conversational AI assistant. It successfully maintains context and can handle follow-up questions, which makes it feel much more intelligent than a simple chatbot. We're also proud of the dual authentication system; integrating Google OAuth with our custom JWT-based backend securely was a great accomplishment. Finally, building the entire cloud infrastructure using the AWS CDK was a major win. It means our entire stack from the database tables to the S3 buckets is defined in code, repeatable, and scalable.

What we learned We learned a massive amount about the practical side of integrating generative AI. It's much more than just a single API call; it requires careful state management and prompt engineering to be effective. This project was also a deep dive into the AWS ecosystem, and using the AWS CDK for Infrastructure as Code was a highlight. We learned how to provision, connect, and manage cloud services programmatically. Lastly, we gained valuable experience in orchestrating multiple third-party APIs, handling their errors, and managing a secure, complex authentication flow.

What's next for Hack Travel Right now, the platform is excellent for planning and discovery. The next logical step is to move into booking capabilities, allowing users to book their flights and hotels directly within the app instead of just getting links. We also want to make the AI more proactive, perhaps by suggesting trips based on a user's saved budget or past travel history. Finally, we plan to build out a complete CI/CD pipeline (using the buildspec.yml file we've already created) to automate testing and deployments to AWS, making the entire development process smoother.

Share this project:

Updates