Mission control for satellite emergency response.
Fuse live disaster feeds with satellite access windows, revisit timelines, and downlink planning.
LETO is a browser-first mission control dashboard for satellite emergency response. It answers the critical question:
"Given my satellites and ground stations, which incident can I observe first β and how quickly can I get the data down?"
Built for satellite imagery analysts, emergency coordinators, and field operators who need rapid triage under time pressure.
| Feature | Description |
|---|---|
| π₯ Live Feeds | NASA FIRMS (fires), GDACS (floods/cyclones), NASA EONET (natural events), USGS (earthquakes) |
| π°οΈ Orbit Propagation | SGP4/TLE propagation for real satellites; circular orbit generator for synthetic constellations |
| πΊοΈ Access Windows | AOI imaging passes, station contact windows, revisit gap analysis |
| β±οΈ Time-to-Information | TTFO (time to first observation) + TTDL (time to downlink) per incident |
| π Serviceability Scoring | Weighted 0-100 score combining observation latency + downlink latency + gap coverage |
| π― Interactive Map | Satellite basemap with ground tracks, footprints, AOI boundaries, incident markers |
| π Gantt Timeline | Visual pass schedule with access windows, downlink windows, station contacts |
| βοΈ Scenario Editor | Configure AOIs, satellites, stations, horizons, timesteps in real-time |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β DATA SOURCES β
β NASA FIRMS βββΊβ β
β GDACS ββββββββΊβ βββββββββββββββ βββββββββββββββββββββββ β
β NASA EONET βββΊββββΊβ Ingestion βββββΊβ Satellite Engine β β
β USGS βββββββββΊβ β + Cache β β (SGP4/Access calc) β β
β β βββββββββββββββ βββββββββββββββββββββββ β
β β β β
β β βββββββ΄ββββββ β
β β βΌ βΌ β
β β βββββββββββ ββββββββββββ β
β β β Tracks β β Windows β β
β β β Access β β Revisit β β
β β ββββββ¬βββββ ββββββ¬ββββββ β
β β βββββββ¬βββββββ β
β β βΌ β
β β ββββββββββββββββββββ β
β β β Incident Scores β β
β β β + Serviceabilityβ β
β β ββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β UI LAYERS β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββββββββββ β
β βIncident Queueβ β Tactical Map β β Selected Incident β β
β β + Filters β β + Layers β β + Tabs + Metrics β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββββββββββ β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Gantt Timeline (Pass Schedule) β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Clone the repo
git clone https://github.com/benajaero/leto.git
cd leto
# Install dependencies
pnpm install
# Run development server
pnpm dev
# Run tests
pnpm test
# Build for production
pnpm buildFor live fire data from NASA FIRMS, get a free API key at firms.modaps.eosdis.nasa.gov/api/map_key/ and paste it into LETO's settings panel. Without a key, LETO falls back to bundled sample data.
| Source | Type | Latency | Auth |
|---|---|---|---|
| NASA FIRMS | Active fires (VIIRS/MODIS) | ~3 hours | Free API key |
| GDACS | Floods, cyclones, earthquakes | ~1 hour | None |
| NASA EONET | Natural events (fires, storms, volcanoes) | ~1 hour | None |
| USGS Earthquakes | M2.5+ earthquakes | Real-time | None |
β οΈ Decision-support only. Not a sole source for operational response. All data feeds have latency, coverage gaps, and correction cycles. The UI surfaces timestamps and source status for transparency.
- Framework: Next.js 14 (App Router, static export)
- State: Zustand (split stores: engine + UI)
- Styling: Tailwind CSS v3 (custom aerospace dark theme)
- Orbits: satellite.js (SGP4 propagation)
- Maps: Leaflet + react-leaflet (CartoDB Dark Matter tiles)
- Testing: Vitest
- Deploy: Vercel
- Core engine (SGP4, access windows, revisit)
- Live data feeds (FIRMS, GDACS, EONET, USGS)
- Interactive map with satellite basemap
- Gantt timeline for pass scheduling
- Scenario editor
- Mobile-responsive layout
- 3D globe view (Cesium/Three.js)
- Weather overlay integration
- Multi-user collaboration
- Tasking request generation
See CONTRIBUTING.md for workflow, testing, and spec updates. By participating, you agree to the CODE_OF_CONDUCT.md.
Copyright 2026 Chukwudiebube Ebenezer Ajaero
Licensed under the Apache License, Version 2.0. See LICENSE for details.
- NASA FIRMS (Active Fire data)
- GDACS (Global Disaster Alert and Coordination System)
- NASA EONET (Earth Observatory Natural Event Tracker)
- USGS Earthquake Hazards Program
- CelesTrak (TLE data)