Live Sky
Sky Overlay — North York
Real-time positions of the Sun, Moon, planets, and bright stars above North York, Toronto. Celestial coordinates computed every 3 minutes on a Raspberry Pi 5 using the Skyfield library and DE421 ephemeris. Hover over any object for details. Scroll to zoom.
Under the Hood
How it works
Three steps from orbital mechanics to pixel — running continuously on a Raspberry Pi 5 in North York.
Compute
Every 3 minutes, sky.py runs on the Pi 5. It loads the DE421 JPL planetary
ephemeris and the Hipparcos star catalogue, then uses the Skyfield astronomy library to
compute altitude and azimuth for the Sun, Moon, seven planets, every star brighter than
magnitude 3.5, and satellites. Satellite positions are derived from fresh TLE orbital
elements pulled from CelesTrak and propagated with the SGP4 model.
Publish
The results are serialized to a compact JSON file (sky-bodies.json, ~8 KB)
and transferred over SSH via scp to the Hostinger shared hosting server.
The file refreshes every 3 minutes alongside all other live data produced by the
Pi 5 — metrics, flights, BME680 air quality, and security events.
Render
The browser fetches the JSON and draws every body onto an HTML canvas using a
gnomonic projection — the same geometry used in real star atlases. The
projection maps the curved celestial sphere onto a flat plane such that straight lines
correspond to great-circle arcs, giving undistorted directions near the centre of view.
Drag to pan, scroll to zoom.
Object Guide
What you're seeing
Coordinate System
| Term | Meaning |
|---|---|
| Azimuth | Compass bearing measured clockwise from North. 0° = North, 90° = East, 180° = South, 270° = West. |
| Altitude | Degrees above the horizon. 0° = horizon, 90° = zenith. Negative = below horizon. |
| Magnitude | Logarithmic brightness scale — lower is brighter. Sun = −26.7, full Moon ≈ −12, ISS ≈ −2.5 at peak. |
| DE421 | NASA/JPL high-precision solar system position table, valid 1900–2050. ~17 MB, cached on the Pi. |
| SGP4 | Standard satellite propagator for TLE elements. Accurate to ~1 km for a few hours from the TLE epoch. |
| TLE | Compact satellite orbital parameter format from CelesTrak (U.S. Space Force data), refreshed every 6 h. |
Stack