Skip to content

yuvanmuru-dev/trAAvl

Repository files navigation

trAAvl: AI-Powered Passenger and Operations Platform

trAAvl is a full-stack hackathon prototype that improves the airline disruption experience through a passenger AI copilot and an operations control center. It focuses on clear, real-time guidance during delays, gate changes, missed connections, and baggage issues, while giving ops teams tools to triage risk and coordinate support.

Disclaimer: trAAvl is a hackathon prototype and is not affiliated with or endorsed by American Airlines.


Problem

Flight disruptions create confusion and long support lines because passengers lack personalized guidance and staff lack a unified way to triage impact. trAAvl addresses this with a single timeline for passengers and an ops dashboard that surfaces risks and actionable next steps.


Features

Passenger Portal

  • RAG-grounded AI Assistant: Answers passenger questions using verified trip context only, designed to avoid hallucinating gates, times, or itinerary details.
  • Trip Timeline: Real-time flight status, delay indicators, and gate change alerts.
  • Connections Coach: Connection feasibility scoring plus step-by-step transfer guidance using a gate-distance model for select airports.
  • Disruption Recovery Hub: Rebooking guidance, nearby hotel suggestions, and ground transport instructions.
  • Baggage Help: Report mishandled baggage and track case status updates.

Employee Portal

  • At-Risk Connection Dashboard: Highlights flights and connections with elevated misconnect risk.
  • Assistance Queue: Tracks wheelchair, cart, or escort requests with dispatch and resolution status.
  • Scenario Simulator: Generates realistic events like delays, gate changes, holds, cancellations, and baggage updates for an end-to-end demo.
  • Optional module: Volunteer and overbooking flow with simulated compensation bids.

How it works

  • Frontend: Modern React interface with a consistent glass-style design system and animations.
  • Backend: Secure APIs and realtime updates so passengers and employees see changes immediately.
  • Data model: Trips and flight segments plus an event stream for updates such as delays, gate changes, holds, and baggage status.
  • AI: Gemini 2.5 Flash is used to power a passenger assistant that is constrained to verified user context and approved sources.

Tech Stack

  • Frontend: React, TypeScript, Vite, Tailwind CSS, shadcn/ui, Radix UI, Framer Motion, Zustand
  • Backend and DB: Supabase (PostgreSQL, Auth, Row-Level Security, Realtime, Edge Functions)
  • AI: Google Gemini 2.5 Flash via an Edge Function
  • Maps and routing: Google Maps for ground transport and a lightweight airport gate graph for connection routing
  • Visualization: Recharts for operations dashboards

AI Assistant Design

The passenger chatbot uses a Retrieval-Augmented Generation approach where trip context is provided to the model and strict grounding rules are enforced. The assistant is designed to answer questions about flights, gates, seats, baggage status, vouchers, and recovery options only when that information is available in the user’s context. For questions outside that context, it responds with clear limitations and suggests the next best step.


Security

  • Row-Level Security is enforced on user-scoped tables to prevent cross-user access.
  • Authentication is handled through Supabase Auth.
  • Secrets like AI keys are stored server-side and are never exposed to the client.

Quick Start

Prerequisites

  • Node.js 18+
  • A Supabase project

Setup

  1. Clone the repo and install dependencies.
  2. Create a Supabase project and apply the database migrations and seed data.
  3. Configure environment variables for the frontend and backend.
  4. Run the app in development mode.

Environment Variables

Set these values in your local environment and in Supabase secrets as appropriate:

  • Supabase URL and anonymous key for the frontend
  • Gemini API key for the Edge Function
  • Google Maps API key if using map features

Demo Flow

A recommended demo uses the simulator to trigger an end-to-end disruption story:

  1. Passenger opens a trip timeline.
  2. Ops triggers a delay and gate change.
  3. Passenger sees connection risk update and receives recovery guidance.
  4. Passenger requests assistance and ops resolves it.
  5. Passenger explores rebooking and hotel options.
  6. Ops triggers a baggage update and passenger sees the status change.

Project Structure

  • Passenger UI components and pages
  • Employee portal components and dashboards
  • Shared stores for state management
  • Supabase Edge Functions for server-side AI calls and protected logic
  • Database schema and seed data for airports, flights, trips, and disruption events

Roadmap

  • Push notifications for disruption events
  • Voice mode for hands-free passenger guidance
  • Proactive recovery suggestions before cancellations
  • Expanded airport routing coverage and accessibility-aware navigation

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors