AeroVision
A real-time flight radar mobile application with AI insights
- Stars
- 6
- Language
- Python
- Updated
AeroVision
A real-time flight radar mobile application with AI insights.
Architecture
- Frontend: React Native (Expo) with TypeScript
- Backend: Python FastAPI with WebSockets
- Database: PostgreSQL with PostGIS
- Cache: Redis
- ML: Custom models for delay prediction, turbulence estimation, and anomaly detection
Setup
Backend
-
Install dependencies:
cd backend pip install -r requirements.txt -
Set up PostgreSQL and Redis.
-
Run the backend:
uvicorn main:app --reload -
Run ADS-B ingestion:
python ingest/adsb_stream.py
Frontend
-
Install Expo CLI.
-
Install dependencies:
npm install -
Start the app:
npm start
API Endpoints
GET /flights/live- Live flightsWS /ws/flights- WebSocket for real-time updatesGET /flights/{icao}- Flight detailsGET /ai/delay/{flight_id}- Delay predictionGET /ai/turbulence/{flight_id}- Turbulence prediction
Sample WebSocket Payload
[
{
"icao": "ABC123",
"callsign": "UAL123",
"lat": 37.7749,
"lon": -122.4194,
"altitude": 35000,
"speed": 500,
"heading": 90
}
]
Sample ML Outputs
Delay Prediction:
{
"delay_probability": 0.78,
"reason": "Airport congestion"
}
Turbulence:
{
"turbulence_level": "Moderate",
"confidence": 0.85
}