How edtheninja/airhive works
AirHive is an airline operations management system: staff use the operations interface to monitor and manage flights and related airline resources, while passengers have a role-specific dashboard. The React frontend communicates with a Spring Boot REST backend; the backend also provides authentication, analytics, notifications, and real-time updates. The README documents PostgreSQL and Redis, but sampled source does not establish all storage or integration wiring. Several backend capabilities are represented at their exact source directories because their implementations were not excerpted.
Main entry points: client.ts REST client · FlightService.java Flight operations · index.tsx Operations dashboard · passenger-dashboard.tsx Passenger dashboard
Components 26
Operations Interface
- Operations dashboard
src/routes/index.tsx - Passenger dashboard
src/components/passenger/passenger-dashboard.tsx - Route list
src/routes/routes.index.tsx - Operations pages
src/routes - REST client
src/lib/api/client.ts - Auth context
src/lib/auth/auth-context.tsx - Browser session
src/lib/auth/session.ts
Airline Operations
- Flight API
backend/src/main/java/com/airhive/backend/controller/FlightController.java - Booking API
backend/src/main/java/com/airhive/backend/controller/BookingController.java - Route API
backend/src/main/java/com/airhive/backend/controller/RouteController.java - Flight operations
backend/src/main/java/com/airhive/backend/service/FlightService.java - Route management
backend/src/main/java/com/airhive/backend/service/RouteService.java - Fleet and airport services
backend/src/main/java/com/airhive/backend/service - Passenger and crew services
backend/src/main/java/com/airhive/backend/service - Booking management
backend/src/main/java/com/airhive/backend/service/BookingService.java - Maintenance management
backend/src/main/java/com/airhive/backend/service/MaintenanceService.java - Authentication API
backend/src/main/java/com/airhive/backend/controller/AuthController.java
Identity and Live Updates
- Authentication service
backend/src/main/java/com/airhive/backend/service/AuthService.java - JWT service
backend/src/main/java/com/airhive/backend/security/JwtService.java - Flight live updates
backend/src/main/java/com/airhive/backend/service/FlightWebSocketService.java - Notifications
backend/src/main/java/com/airhive/backend/service/NotificationService.java
Analytics and State
- Operational analytics
backend/src/main/java/com/airhive/backend/service/AnalyticsService.java - PostgreSQL
- Redis cache
Other components
- Staff user
- Passenger
Connections 26
- Staff user → Operations dashboard: uses
src/routes/index.tsx - Passenger → Passenger dashboard: uses
README.md - Operations dashboard → Passenger dashboard: selects by role
src/routes/index.tsx - Route list → REST client: requests routes
- Operations pages → REST client: calls REST API
README.md - Passenger dashboard → REST client: loads bookings and flights
src/components/passenger/passenger-dashboard.tsx - Auth context → Browser session: saves session
src/lib/auth/auth-context.tsx - Auth context → Authentication API: authenticates via API
README.md - REST client → Browser session: reads token
src/lib/api/client.ts - REST client → Flight API: sends REST requests
README.md - REST client → Booking API: sends REST requests
README.md - REST client → Route API: sends REST requests
README.md - Flight API → Flight operations: delegates
backend/src/main/java/com/airhive/backend/controller/FlightController.java - Booking API → Booking management: delegates
backend/src/main/java/com/airhive/backend/controller/BookingController.java - Route API → Route management: delegates
- Authentication API → Authentication service: delegates
- Authentication service → JWT service: creates tokens
backend/src/main/java/com/airhive/backend/service/AuthService.java - Flight operations → Flight live updates: publishes events
backend/src/main/java/com/airhive/backend/service/FlightService.java - Operations dashboard → Operational analytics: views operational metrics
README.md - Flight operations → PostgreSQL: persists operations
README.md - Fleet and airport services → PostgreSQL: manages records
README.md - Passenger and crew services → PostgreSQL: manages records
README.md - Booking management → PostgreSQL: manages bookings
README.md - Maintenance management → PostgreSQL: manages maintenance
README.md - Operational analytics → PostgreSQL: reads operations history
README.md - Flight operations → Redis cache: uses caching
README.md