# Perigee > Perigee (Périgée in French) is a free, open-source web app showing in real time and in 3D the artificial objects orbiting the Earth, the Moon and Mars, and the spacecraft crossing the solar system. Every position is computed in the visitor's browser from public data; nothing is computed on a server. Interface in English and French. For education, not for navigation or conjunction assessment. Site: https://perigee.info/ (English: `?lang=en`, French: `?lang=fr`). It is a single-page WebGL 2 application: the views are rendered with JavaScript, so this file and the linked documents describe them in text. ## Views - [Earth](https://perigee.info/?lang=en): every active catalogued satellite (about 16,000), propagated with SGP4 from CelesTrak orbital elements (OMM), with launch sites, filters by operator, country, constellation, orbit type and object type, and the Moon. - [Moon](https://perigee.info/?lang=en&view=moon): active lunar orbiters from NASA/JPL Horizons ephemerides, and the landing and impact sites (Apollo, Luna, Chang'e, Chandrayaan, commercial landers). - [Mars](https://perigee.info/?lang=en&view=mars): Mars orbiters, Phobos and Deimos (Horizons), landing sites and the current rover positions (NASA MMGIS waypoint feeds). - [Solar system](https://perigee.info/?lang=en&view=solar): planets and moons (astronomy-engine, JPL mean elements), dwarf planets and interplanetary probes (Horizons), with their trajectories; `candidates=1` draws and lists the dwarf planet candidates (Gonggong, Quaoar, Orcus, Sedna, 2026 ED138; ids `quaoar`, `2026-ed138`…). ## Links into the app URL parameters: `view` (`moon`, `mars`, `solar`; Earth by default), `lang` (`en`, `fr`), `sel` (selected object: a NORAD catalogue number such as `25544` for the ISS, a mission id, `site:` for a landing site, or a planet id such as `jupiter`), `t` (ISO 8601 UTC instant, e.g. `2026-10-08T15:00:00Z`), `rate` (time multiplier, `0` pauses), `frame` (`inertial`). Example: https://perigee.info/?lang=en&view=moon&sel=site:apollo-11 More: `sel` also takes `moon:` (moons in the solar view, e.g. `moon:titan`), `star:` (named stars: `stars=1` names the bright ones, `nearby=1` those within 20 light-years; with `sel=star:`, `map=1` opens the star's 3D map with the Sun and `pick=star:` adds a star to compare, alone in the frame with `embed=1`), `comet:` (comets: `comets=1` draws and lists them, positions from JPL Horizons, tails illustrative), `asteroid:` (notable asteroids: `asteroids=1`), `sun`, and `moon` in the Earth view; `follow=1` follows the selected object. ## For AI assistants and lesson pages: embed mode Add `embed=1` to show the 3D view alone (no bars or panels) in an iframe, with a corner link to the full app; `ui=panel` keeps the selected object's information panel, `ui=time` the time bar (`ui=panel,time` for both). The embedding page can drive it with `postMessage` (protocol `perigee:v1`, any origin, replies to the caller's origin): - Request: `{ type: 'perigee:v1', id, method, params }`; reply: `{ type: 'perigee:v1', id, ok, result | error }`. - `get`: view, `sel`, simulation `time` (ISO UTC), `live`, `rate`, `frame`, `lang`, `following`, `url` (the same view in the full app). `{ details: true }` adds the selected object's facts (goals, status, sources, image with credit and licence) and its position with provenance: model, data source, fetch time, element age, validity window, data state (`fresh`, `interpolated`, `stale`, `extrapolated`, `hidden`, `modelled`, `none`) and typical accuracy. - `set`: any of `view`, `sel` (null clears), `time` (ISO or `now`), `rate`, `frame`, `lang`, `follow`. - `snapshot`: `{ kind: 'shown' | 'objects' }` returns a PNG data URL of the 3D view (as shown with labels, or the objects only) and its title. - Events posted to the parent: `ready`, `view`, `selection`, `time`, each with the state. ## MCP server Perigee's tools for AI assistants: `perigee_find` (ids by name), `perigee_object` (facts, goals, sources, image with credit), `perigee_state` (position and velocity at a date, the ground point below: latitude, longitude, country or sea, sunlight), `perigee_orbit` (perigee, apogee, period, inclination, regime), `perigee_passes` (when a satellite passes over a place: rise, highest point, set, direction, naked-eye visibility, local times), `perigee_sky` (the sky from a place: Sun and twilights, Moon phase, planets and bright stars, naked-eye visibility), `perigee_events` (Moon phases, eclipses also as seen from a place, equinoxes and solstices, planet oppositions and elongations, mission milestones), `perigee_tonight` (what to see tonight from a place: Moon, planets, visible passes of the ISS, Tiangong and Hubble, pairings, events), `perigee_sky_conjunctions` (close pairings of the Moon, planets and bright stars seen from a place, or a satellite passing near them), `perigee_shadow` (sunlight or Earth's shadow, next entry and exit), `perigee_ground_track` (the path below a satellite, with GeoJSON), `perigee_close_approach` (closest distance between two objects in space; education only), `perigee_stats` (counts of active satellites by owner, operator, constellation, orbit regime, launch year), `perigee_distance` and `perigee_distance_series`, `perigee_view` (link and iframe of the live 3D view), `perigee_describe_view` (a view link in words: alternative text and a description for lesson notes), `perigee_define` (student-level definitions, EN/FR), `perigee_about` (sources, models, accuracy). Every computed answer carries its provenance. - Hosted (Streamable HTTP, no account): https://perigee-mcp.perigeeinfo.workers.dev/mcp - Local (stdio, Node.js 20+): `npx -y perigee-mcp` ([npm](https://www.npmjs.com/package/perigee-mcp)) ## Machine-readable documents - [Interface](https://perigee.info/api/interface.json): ids, URL parameters, the embed API (JSON Schema of `set`), data states, models and their typical accuracy, freshness and attribution. - [Catalogue](https://perigee.info/api/catalog.json): every curated object (missions, featured Earth science satellites, planets, moons, landing and launch sites, named stars) in English and French, with goals, status, identifiers, sources, `verified` dates, an image and `view`/`embed` links. - [Images](https://perigee.info/api/images.json): the catalogue's photographs and illustrations with credit, licence and source page. - [Glossary](https://perigee.info/api/glossary.json): student-level definitions (EN/FR) of the terms shown in the panels. - [Full text](https://perigee.info/llms-full.txt): this file followed by the whole catalogue and glossary in plain English. ## How it works - Positions: SGP4/SDP4 (satellite.js) for Earth satellites, cubic Hermite interpolation of JPL Horizons state vectors for spacecraft, two-body extrapolation beyond the published window (shown as extrapolated), astronomy-engine (VSOP87) for the planets. - Every object states how fresh and how reliable its position is (propagated from recent elements, interpolated from ephemerides, or extrapolated/modelled). - Data are refreshed by a GitHub Actions pipeline (CelesTrak every 4 h, SATCAT and Horizons daily) and served from the same site; the browser never contacts CelesTrak or Horizons. ## Documentation - [README](https://github.com/dlamarre-dev/Perigee/blob/master/README.md): features and usage. - [Data sources and attribution](https://github.com/dlamarre-dev/Perigee/blob/master/DATA_SOURCES.md): CelesTrak, Space-Track, NASA/JPL Horizons, NASA SVS, USGS, NASA 3D Resources and others. - [Mission catalogue](https://github.com/dlamarre-dev/Perigee/blob/master/catalog/missions.json): missions beyond Earth orbit with their status, Horizons ids and sources. - [Source code](https://github.com/dlamarre-dev/Perigee) (MIT licence). ## Optional - [Earth satellite data](https://perigee.info/data/manifest.json): manifest of the published datasets (OMM elements, SATCAT, ephemerides) with fetch times.