What it does
Skyward Companion is a dual-mode travel assistant built for both passengers and flight crew.
Passenger mode
Skyward Companion helps travelers navigate airport connections with less stress by:
- Pulling flight details from a flight number (with seeded fallback when live data is unavailable)
- Showing connection confidence (High/Medium/Low) based on time and transfer estimates
- Recommending food and lounges based on the traveler’s terminal path
- Providing baggage status tracking
- Offering ride and airport essentials suggestions
- Displaying a 3D globe flight visualization for a modern, intuitive dashboard experience
Crew mode
Skyward Companion helps flight attendants reduce fatigue and manage jet lag by:
- Generating layover-aware sleep and recovery recommendations
- Supporting adjustable circadian anchor time zones (EST, CST, Paris time, etc.)
- Building structured daily layover plans designed around healthy rest
- Providing wellness insights and logging tools to support consistency over time
How we built it
We built Skyward Companion as a modern web application optimized for UI quality, speed, and reliability.
- Frontend: React, TypeScript, Vite
- UI: TailwindCSS + shadcn/ui (including dark mode support)
- Routing: React Router
- Data fetching and caching: TanStack React Query
- Flight visualization: 3D globe route animation (react-globe.gl)
- Flight data layer: flight lookup service with caching and seeded fallback support
- AI-powered features: GPT-assisted generation for airport-specific recommendations and travel guidance when structured data is unavailable
The primary design goal was to make the experience feel airline-grade: clean, readable, and easy to navigate under time pressure.
Challenges we ran into
- Flight data reliability: Many flight status APIs require credit cards, rate-limits, or restricted access. To keep the app fully demo-ready, we built a fallback system using seeded flight data so the experience still works end-to-end.
- Time zone correctness: Displaying accurate departure and destination local time required careful handling of time zone conversion and formatting.
- UI stability with embedded 3D visualization: Maintaining responsive layout and consistent sizing while rendering a 3D globe required iteration and performance tuning.
- Runtime crashes from missing data: Components needed defensive handling to prevent undefined values from breaking the user experience.
- Deployment configuration: Shipping a Vite app to production required correcting build and start configuration so the app runs reliably outside local development.
Accomplishments that we're proud of
- Built a dual-user product experience (passenger and crew) with distinct, meaningful workflows
- Delivered a high-quality dark mode UI across multiple pages
- Implemented a complete connection planning flow with confidence scoring and route guidance
- Developed a 3D globe flight visualization to enhance clarity and user engagement
- Made the app resilient by supporting realistic demo fallback behavior without breaking the experience
What we learned
- Real travel applications depend heavily on data availability, so product reliability requires robust fallback architecture.
- Time zones are deceptively complex and are essential to get correct in any travel tool.
- A strong hackathon project is not only about feature count, but also about polish, clarity, and demo stability.
- Good UI is not decoration; it is part of usability and directly affects whether a tool feels trustworthy in a high-stress travel context.
What's next for Skyward Companion
Passenger improvements
- Live gate and terminal map integrations
- Expanded terminal-specific food and lounge coverage for more airports
- Real baggage tracking integration
- Multi-leg itinerary visualization for complex connecting routes
Crew improvements
- More personalized fatigue and sleep planning based on longer-term trends
- Improved jet lag adaptation logic that accounts for short vs long layovers
- Optional wearable data integration (Apple Watch / HealthKit)
Platform improvements
- Auth0 authentication and role-based routing
- Stronger caching and performance tuning
- Production-grade backend for flight and airport data
Built With
- css
- javascript
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.