Automated mirror of satellite orbital data and catalog metadata for Satvisor. GitHub Actions fetch from external APIs on tiered cron schedules so the app can consume static files from github.com/ghraw without hitting rate limits.
Each group is available in both TLE and OMM JSON formats.
Updated every 2 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Starlink | starlink |
~9,700 | tle | json |
| OneWeb | oneweb |
~650 | tle | json |
| Kuiper | kuiper |
~210 | tle | json |
| Qianfan (G60) | qianfan |
~110 | tle | json |
| Hulianwang (Guowang) | hulianwang |
~150 | tle | json |
Updated every 2-12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Space Stations | stations |
~35 | tle | json |
| 100 Brightest | visual |
~150 | tle | json |
| Active Satellites | active |
~14,500 | tle | json |
| Last 30 Days' Launches | last-30-days |
~270 | tle | json |
| Analyst Satellites | analyst |
~220 | tle | json |
Updated every 6-12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Iridium NEXT | iridium-NEXT |
~80 | tle | json |
| Globalstar | globalstar |
~85 | tle | json |
| Orbcomm | orbcomm |
~60 | tle | json |
| Intelsat | intelsat |
~60 | tle | json |
| SES | ses |
~65 | tle | json |
| Eutelsat | eutelsat |
~30 | tle | json |
| Telesat | telesat |
~20 | tle | json |
| Geostationary | geo |
~570 | tle | json |
| Amateur Radio | amateur |
~100 | tle | json |
| SatNOGS | satnogs |
~700 | tle | json |
| Experimental Comms | x-comm |
~20 | tle | json |
| Other Comms | other-comm |
~25 | tle | json |
Updated every 6-12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| All GNSS | gnss |
~170 | tle | json |
| GPS | gps-ops |
~30 | tle | json |
| GLONASS | glo-ops |
~30 | tle | json |
| Galileo | galileo |
~35 | tle | json |
| BeiDou | beidou |
~55 | tle | json |
| SBAS | sbas |
~20 | tle | json |
| NNSS | nnss |
~20 | tle | json |
| Musson | musson |
~10 | tle | json |
Updated every 6-12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Weather | weather |
~70 | tle | json |
| NOAA | noaa |
~25 | tle | json |
| GOES | goes |
~20 | tle | json |
| Earth Resources | resource |
~160 | tle | json |
| Planet | planet |
~75 | tle | json |
| Spire | spire |
~50 | tle | json |
| SARSAT | sarsat |
~85 | tle | json |
| ARGOS | argos |
~30 | tle | json |
| Disaster Monitoring | dmc |
~10 | tle | json |
| TDRSS | tdrss |
~25 | tle | json |
Updated every 12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Science | science |
~50 | tle | json |
| Geodetic | geodetic |
~10 | tle | json |
| Engineering | engineering |
~40 | tle | json |
| Education | education |
~6 | tle | json |
| Military | military |
~20 | tle | json |
| Radar Calibration | radar |
~10 | tle | json |
| CubeSats | cubesat |
~90 | tle | json |
| Other | other |
~1 | tle | json |
Updated every 6-12 hours.
| Group | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| FENGYUN 1C Debris | fengyun-1c-debris |
~1,850 | tle | json |
| COSMOS 2251 Debris | cosmos-2251-debris |
~580 | tle | json |
| IRIDIUM 33 Debris | iridium-33-debris |
~110 | tle | json |
| COSMOS 1408 Debris (ASAT) | cosmos-1408-debris |
~4 | tle | json |
Updated every 2-6 hours.
| Dataset | Slug | Sats | TLE | JSON |
|---|---|---|---|---|
| Decaying (reentry candidates) | decaying |
~75 | tle | json |
| GEO Protected Zone | gpz |
~870 | tle | json |
| GEO Protected Zone+ | gpz-plus |
~1,750 | tle | json |
Updated weekly.
| File | Source | Entries | Description |
|---|---|---|---|
catalog/satnogs.json |
SatNOGS DB | ~2,600 | Satellite metadata + ~2,600 transmitter frequencies |
catalog/stdmag.json |
McCants + SATCAT | ~33,000 | Standard visual magnitudes (observed + RCS-derived + heuristic) |
Raw URLs follow the pattern:
https://github.com/ghraw/satvisorcom/satvisor-data/master/celestrak/tle/{slug}.tle
https://github.com/ghraw/satvisorcom/satvisor-data/master/celestrak/json/{slug}.json
Freshness metadata: manifest.json
All scripts are zero-dependency Node.js (requires Node 18+).
node scripts/fetch-celestrak.mjs --tier hot # fetch a tier
node scripts/fetch-celestrak.mjs --groups starlink # fetch specific groups
node scripts/fetch-celestrak.mjs --special decaying # fetch special datasets
node scripts/generate-satnogs.mjs # update SatNOGS catalog
node scripts/generate-stdmag.mjs # update visual magnitudesA weekly workflow replaces all git history with a single commit containing the current data. Old satellite data has no archival value — only the latest TLEs matter.