SKYE ORBITAL
Skye Orbital is a real-time dashboard that visualizes over 13,000 active satellites and space debris on an interactive 3D globe, with visible-pass prediction and orbital close-approach detection. Client-side SGP4 propagation via satellite.js, WebGL rendering with CesiumJS, Cloudflare back end (Workers, D1, KV, Queues, Workers AI).
PROJECT DETAILS
Objective
The goal was to make readable and accessible to a non-specialist audience something that usually stays an abstract table of coordinates: where a satellite is right now, when it will be visible from a given point, and which objects are dangerously converging with one another in low Earth orbit.
Technologies used
The front end is static (vanilla HTML/CSS/JS), with no framework or bundler: CesiumJS renders the 3D globe in WebGL (PointPrimitiveCollection and LabelCollection to keep it smooth with 13,000+ objects), and satellite.js computes SGP4 orbital propagation directly in the browser. The Cloudflare back end serves orbital elements (TLE) through Workers with a KV cache (2h TTL, respecting CelesTrak's rate limit) and Cron Triggers for periodic refresh; D1 stores the object catalog, detected close approaches and daily briefings. Close-approach detection runs on a 4-stage Cloudflare Queues pipeline (parse → bin-and-dispatch → precompute → scan → refine), and the daily natural-language briefing is generated via Workers AI.
Challenges and solutions
The main technical challenge was rendering over 13,000 tracked objects in real time without hurting performance: the fix was to delegate all position computation to the browser (SGP4 via satellite.js) and let the server only cache and serve the raw orbital elements. Close-approach detection needed a dedicated multi-stage pipeline to stay practical at that scale over a 72h window, with a 5km production threshold — deliberately presented as an indicative geometric signal, not an operational collision prediction.
GALLERY


