Inspiration
Travel planning is exciting but often overwhelming. Deciding which attractions to visit, where to eat, predicting traffic delays, and considering eco-friendly options can be tedious and time-consuming.
We were inspired to build AI Travel Planner after noticing that most travel apps provide static suggestions without personalization. We wanted a chat-based assistant that could plan trips intelligently, respond to user preferences, and even consider sustainability — all in one place.
What it does
AI Travel Planner is a chat-based AI assistant that:
- Generates personalized multi-day itineraries for any destination.
- Recommends restaurants, attractions, and activities.
- Predicts traffic delays and suggests optimal routes.
- Offers eco-friendly travel recommendations to reduce carbon footprint.
- Formats responses neatly in a ChatGPT-style UI.
Users simply type their trip preferences, and the AI produces a full, structured itinerary in response.
How we built it
Frontend:
- Built with React and Tailwind CSS for a clean, chat-like UI.
- Markdown rendering to display itineraries neatly.
- Hosted on S3 + CloudFront for fast, secure delivery.
- Built with React and Tailwind CSS for a clean, chat-like UI.
Backend:
- AWS Lambda function in Python handles API requests.
- Connected to API Gateway for RESTful access.
- Lambda formats user input and calls Amazon Bedrock Nova LLM, parses responses, and sends them back to the frontend.
- AWS Lambda function in Python handles API requests.
Workflow:
- User sends request → Frontend → API Gateway → Lambda → Bedrock Nova → Lambda → Frontend → User sees formatted itinerary.
Challenges we ran into
- LLM input formatting: Amazon Bedrock Nova expects a precise
messagesarray structure. Early attempts failed due to missing or malformed keys. - Timeouts: Lambda initially timed out when LLM responses were large. Increased timeout and optimized input formatting solved this.
- CORS & deployment issues: Ensuring React + CloudFront + API Gateway communicated correctly required careful CORS header configuration.
- SPA routing: Refreshing React routes caused 404 errors; fixed by configuring CloudFront to serve
/index.htmlfor all routes. - JSON parsing errors: Early responses from LLM sometimes returned unexpected text; added robust parsing and error handling.
Accomplishments that we're proud of
- Successfully integrated Amazon Bedrock Nova to generate structured travel itineraries from natural language input.
- Built a full-stack serverless app with React frontend, Lambda backend, API Gateway, and CloudFront hosting.
- Created a ChatGPT-like interface for user-friendly interaction.
- Added eco-friendly travel recommendations, a unique feature that enhances sustainability.
- Managed to deploy the app live and fully functional for public access.
What we learned
- How to integrate LLMs into a real-world application and handle structured input/output.
- Practical experience with serverless architecture using Lambda and API Gateway.
- Deploying a React frontend on S3 + CloudFront and solving SPA routing issues.
- Handling asynchronous responses, CORS, and JSON parsing reliably.
- The importance of formatting messages carefully for AI models and validating outputs.
What's next for AI Travel Planner
- Real-time traffic and weather integration to dynamically adjust itineraries.
- Local event recommendations to enhance user experiences.
- Booking links for restaurants and attractions.
- User profiles and saved trips for personalized suggestions.
- Voice interface for hands-free trip planning.
- Multi-modal support including images, maps, and visual itinerary cards.
- Eco-score and gamification to encourage sustainable travel choices.
- Mobile app version for on-the-go access.
These improvements will make AI Travel Planner more intelligent, personalized, and user-friendly, ensuring a seamless travel planning experience.
Built With
- amazon-web-services
- api
- bedrock
- nova
- python
- react
Log in or sign up for Devpost to join the conversation.