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

  1. 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.
  2. 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.
  3. 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 messages array 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.html for 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

Share this project:

Updates