How komal-2108/aurora works
AURORA is a smart energy management prototype for polar research stations. The main user workflow is to select a station and view live dashboard data, forecasts, alerts, battery and fuel status, then request a dispatch optimization or apply a scenario. The React app communicates with FastAPI; forecasting combines station history with load and renewable models, and optimization uses that forecast with MILP when available or a heuristic fallback. The README documents additional reporting and monitoring capabilities. Route handlers and several services were not sampled, so uncertain internal wiring is omitted.
Main entry points: optimization_service.py Optimization service · App.jsx AURORA app · forecast_service.py Forecast service · api.js API client
Components 20
User interface
- AURORA app
frontend/src/App.jsx - API client
frontend/src/services/api.js - Product views
frontend/src/pages - App shell
frontend/src/components/layout/AppShell.jsx - Reports and analytics
frontend/src/pages/ModulePages.jsx
Application API
- FastAPI entry
backend/app/main.py - API routes
backend/app/api/routes - Alerts and events
backend/app/api/routes/alerts.py - Energy services
backend/app/services
Forecasting
- Forecast service
backend/app/services/forecast_service.py - Station simulator
simulation/simulator.py - Load forecasting
ml/load_forecasting - Renewable forecasting
ml/renewable_forecasting
Dispatch and state
- Optimization service
backend/app/services/optimization_service.py - Dispatch engine
optimizer/dispatch.py - Station state
backend/app/services/state_service.py - Run history store
backend/app/core/database.py - Weather service
backend/app/services/weather_service.py
Other components
- Station operator
- Open-Meteo
Connections 17
- Station operator → AURORA app: uses
- AURORA app → API client: requests data
- AURORA app → Product views: renders
- AURORA app → App shell: wraps views
- API client → FastAPI entry: HTTP requests
- FastAPI entry → API routes: registers routers
- Optimization service → Forecast service: requests forecast
- Forecast service → Station simulator: reads station history
- Forecast service → Load forecasting: predicts load
- Forecast service → Renewable forecasting: predicts renewables
- Optimization service → Dispatch engine: optimizes dispatch
- Optimization service → Station state: reads and updates state
- Optimization service → Run history store: writes run history
- Optimization service → Run history store: reads run history
- Weather service → Open-Meteo: fetches conditions
- API routes → Alerts and events: serves alerts
- Product views → Reports and analytics: includes reports