Sentry
A real-time space domain awareness platform tracking thousands of satellites, near-Earth objects, and orbital debris across LEO, MEO, and GEO — rendered on an interactive 3D globe with custom shaders and a Rust/WASM orbital engine.
Online
2026
Features
3D Globe Visualization
WebGL-powered interactive globe with real-time satellite rendering, altitude-band coloring (LEO/MEO/GEO), cloud layers, and country borders — all running at 60fps.
TLE/SGP4 Orbital Propagation
Ingests Two-Line Element sets from CelesTrak and propagates satellite positions using the SGP4 algorithm via satellite.js for accurate orbital prediction.
NEO Monitoring
Near-Earth Object tracking with NASA CNEOS integration, close approach data, fireball event mapping, and ephemeris visualization on the globe.
Debris Field Tracking
Catalogs major debris events — Cosmos 1408, Fengyun-1C, Iridium 33/Cosmos 2251 — with 5,000+ tracked fragments rendered in real time.
Launch & Reentry Alerts
Live launch tracking with countdown timers, orbital insertion visualization, and automated alerts for decaying objects and imminent reentries.
Rust/WASM Orbital Core
Performance-critical orbital mechanics computed in a custom Rust crate compiled to WebAssembly — arc generation, pass prediction, and conjunction analysis at native speed.
Architecture
Stack Rationale
Why Three.js + Custom Shaders
Rendering 14,000+ satellites at 60fps requires instanced geometry and custom GLSL shaders for atmosphere effects, satellite glow, and orbital arcs. Three.js provides the WebGL abstraction while custom shaders handle the visual fidelity.
Why Rust/WASM for Orbital Math
Conjunction analysis and arc generation are compute-intensive operations that would block the main thread in JavaScript. A custom Rust crate compiled to WASM handles these calculations at near-native speed without sacrificing the web deployment model.
SGP4 Propagation Pipeline
Satellite positions are computed using the SGP4/SDP4 algorithm from Two-Line Element sets. CelesTrak provides OMM-format catalog data that gets parsed, propagated forward in time, and projected onto the 3D globe with altitude compression for visual clarity.
Real-Time Data Architecture
Supabase stores satellite catalogs and NEO data. API routes sync with CelesTrak and NASA CNEOS on schedule. Zustand manages client-side state for filters, time controls, and panel coordination — enabling smooth scrubbing through orbital time.