About

This is a small archive of satellite orbital data. It periodically collects OMM (Orbit Mean-Elements Message) records from CelesTrak and stores each one as a timestamped snapshot, so you can search how an object's orbit has evolved over time.

Why OMM instead of TLE?

The classic Two-Line Element (TLE) text format cannot represent NORAD catalog numbers above 99999, which the catalog is now reaching. CelesTrak is therefore moving consumers to OMM, a structured format (available as JSON/XML/CSV/KVN) that carries the same mean orbital elements without that limitation. This app ingests OMM directly. For backward compatibility you can still download results as legacy TLE, generated on the fly from the OMM data. Satellites with NORAD catalog numbers above 339999 are omitted from TLE output because they cannot be encoded in the fixed-width TLE format.

How it works

  • Ingest — fetches current OMM from CelesTrak and stores new snapshots, keyed by satellite + epoch (duplicates are ignored).
  • Search — query the archive by date range, satellite name, or NORAD ID, optionally pulling in the nearest snapshots just before/after the range.
  • Hybrid fallback — if the archive is still empty, searches fall back to a live CelesTrak query so the app is useful immediately.
  • API — the same queries are available as JSON under /api.

Data model

  • satellite — one row per object (NORAD ID, name, international designator).
  • satellite_data — one row per OMM snapshot (full record + epoch), unique per satellite/epoch.