SkyGuard Ops is a sophisticated, real-time flight operations dashboard and automated re-accommodation engine. It leverages Machine Learning to predict flight cancellation risks and autonomously handles passenger rebooking, accommodation, and notifications during major disruptions.
- 📺 Demo Setup Video: Watch on YouTube
- 🌐 Live Website: flight-v0.web.app
SkyGuard Ops transforms reactive airline operations into a proactive, automated workflow. When weather or operational constraints threaten a flight (e.g., DXB to LHR), the system:
- Predicts Risk: Monitors live telemetry (Weather, Traffic, Crew, Maintenance) using a trained ML model.
- Triggers Remediation: If risk exceeds a threshold (or manual override is activated), it initiates the Advanced Re-accommodation Protocol.
- Automates Logistics: Searches for live alternative flights and hotels via the Amadeus API.
- Notifies Passengers: Publishes instant updates (SMS/Email simulation) via Kafka topics.
| Component | Technology | Hosting Provider |
|---|---|---|
| Backend API | Python / FastAPI | Google Cloud Run |
| ML Model Serving | Python / FastAPI | Google Vertex AI |
| Frontend UI | React / Tailwind CSS / Vite | Firebase Hosting |
| Event Streaming | Apache Kafka | Confluent Cloud |
| Data Sources | Amadeus API | Real-time Flights & Hotels |
The core of the system is a predictive model hosted on Vertex AI.
- Model Type: XGBoost / Scikit-Learn (Joblib serialized).
- Features: Wind speed, visibility, precipitation, temperature, air traffic density, crew availability, and maintenance status.
- Output: A probability score (0-100%) indicating the likelihood of flight cancellation.
The system follows a strict hierarchical logic to ensure the most valuable passengers are handled first while maintaining family integrity.
| Tier | Priority | Benefits |
|---|---|---|
| Business | 1 (Highest) | Immediate rebooking, Upgrade eligibility, 5-Star Hotel. |
| Gold | 2 | Better Economy seats, Guaranteed Lounge, 4-Star Hotel. |
| Silver | 3 | Standard rebooking, 3-Star Hotel. |
| Economy | 4 | Standard rebooking, Meal vouchers based on wait time. |
Logic is based on the calculated Wait Time (Time between original departure and new flight):
- > 3 Hours: 🍱 Meal vouchers issued automatically.
- > 6 Hours: 🛋️ Lounge access granted (Tier 2 and above).
- > 10 Hours: 🏨 Overnight hotel accommodation provided.
- Distance Logic: Searches within 8km first, then expands to 15km.
- Quality Logic: Downgrades stars only if no capacity is found at the target level.
- 100% Refund: Triggered if no suitable flight or hotel is found within a 48-hour window.
- 50% Refund: Triggered if a passenger is downgraded (e.g., Business to Economy).
The engine uses PNR Grouping to ensure that families and travel groups stay together.
- The system will attempt to book the entire group on the same flight.
- If a flight cannot accommodate the whole group, it will search for the next available flight rather than splitting the group (unless absolutely necessary and configured otherwise).
- Real-time Telemetry: Live weather and operational health graphs.
- Passenger Manifest: A searchable, sortable list of all passengers and their real-time rebooking status (Flight ID, Seat, Status, Refund Amount).
- Emergency Override: Manual "Execute Cancel" button to trigger the protocol instantly during known crises.
- Event Logs: Detailed audit trail of every notification sent and decision made by the engine.
This demonstration simulates a critical disruption event for flight FL-999 from Dubai (DXB) to London (LHR).
To ensure the system behaves realistically, we use a hybrid of live APIs and simulated operational metrics:
| Data Point | Source | Description |
|---|---|---|
| Weather | Open-Meteo API | Real-time live weather data (Wind, Visibility, Precipitation) for Dubai (DXB) and London (LHR). |
| Flights | Amadeus API | Live flight offers and schedules queried in real-time for rebooking options. |
| Hotels | Amadeus API | Live hotel availability and metadata for Dubai (DXB) to handle overnight passengers. |
| Air Traffic | Simulated | Randomized density metrics (due to API access limitations). |
| Crew | Simulated | Randomized crew availability scores. |
| Maintenance | Simulated | Randomized maintenance status checks. |
- Launch the System: Ensure the backend and frontend services are running.
- Monitor the Dashboard: Open the web interface. You will see live weather updates from DXB and LHR.
- Trigger Disruption:
- Automated: The system runs a risk engine every 30 seconds. If weather conditions worsen (simulated or real) and the risk score exceeds 60%, the protocol triggers automatically.
- Manual: Click the "Emergency Override" button in the Command Center to force a cancellation event.
- Watch the Recovery:
- The status changes to
RECOVERY_IN_PROGRESS. - The Manifest tab will update in real-time as passengers are assigned new flights and hotels.
- Notifications will appear in the "System Logs" tab.
- The status changes to
/airline-ops-ui: React frontend.backend.py: Main FastAPI bridge between the Risk Engine and Frontend.remediation_logic.py: The "Brain" – contains the rebooking and hotel allocation algorithms.vertex_main.py: The model serving wrapper.passengers.csv: Simulated passenger manifest.build_and_push.sh: Deployment script for Cloud Run and Firebase.
Built for the future of resilient airline operations.