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.
Live
Next.js · Three.js · Rust/WASM · Supabase
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 16,000+ satellites at 60fps requires GPU-accelerated point clouds 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.