Inspiration

Planning a trip means 10+ browser tabs — flights on one site, hotels on another, weather somewhere else, budget on a spreadsheet. I wanted to replace all of that with a single sentence.

What it does

You describe your trip in plain English. Seven specialized AI agents fire simultaneously — searching real flights, hotels, weather forecasts, and local attractions at the same time. A budget agent allocates your money across every category. An LLM writes your complete day-by-day itinerary. Every agent streams its activity live to the screen as it works.

How I built it

The orchestrator parses natural language using Groq LLaMA 3.3 70B into structured data — destination, dates, budget, interests. Four agents then execute in parallel via Python asyncio.gather, each calling a real API: AviationStack for flights, API-Ninjas for hotels, OpenWeatherMap for forecasts, Foursquare for attractions. Results feed into a budget agent, then an itinerary agent that generates a week-by-week plan via LLM. Every step streams live to a React frontend via Server-Sent Events.

Challenges

  • Getting 4 async agents to run truly in parallel and handle failures gracefully without crashing the pipeline
  • LLM token limits on 30-day itineraries — solved by generating week by week
  • Finding a completely free API stack with no credit card requirements
  • Real-time streaming architecture — choosing SSE over WebSockets for one-way server-to-client communication

Accomplishments that we're proud of

Built a genuinely working multi-agent system — not a demo with fake data. Real flights, real weather, real hotel prices, real attractions, all running in parallel and streaming live to the screen. Every agent fails gracefully so the pipeline never crashes. The architecture handles async coordination, typed outputs, and fault tolerance in a way that actually scales.

What we learned

The difference between calling APIs in parallel and building agents — agents have goals, make decisions, and handle failure. How asyncio.gather works under the hood (concurrent I/O on one thread, not true parallelism). Why Server-Sent Events beats WebSockets for one-way streaming. How to use Pydantic to make an entire pipeline type-safe across 7 independent components. And how much faster Groq is compared to other LLM providers.

What's next for AI Navigator

  • Conversational follow-up — let users say "make it cheaper" or "more hiking, less museums" and re-run only the affected agents
  • Agent collaboration — weather agent passes rain forecasts directly to itinerary agent to reschedule outdoor activities automatically
  • Memory — remember past trips and preferences so you never repeat your interests each time
  • Shareable trips — one-click URL to share your full plan with travel companions
  • More agents — visa checker, local transport planner, restaurant reservation agent

Built With

Share this project:

Updates