pgx
PGX — Lightweight Postgres for AI agents. Written in Rust. Thousands of isolated databases in one runtime. 🐘
Translation pending
Web space mission visualization — SPICE-accurate geometry, TLE tracking, planetary terrain, and a 3D renderer
Translation pending
DataTypeScript · JavaScriptGitHub @AaronPlaveOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Web mission visualization — SPICE-accurate geometry, TLE tracking, planetary terrain, and a 3D renderer. A TypeScript monorepo for visualizing spacecraft missions in the browser. Demo.
You configure a scene by writing a catalog — a JSON file that names the bodies, their trajectories, their orientations, and what the viewer should draw. See docs/catalog-format.md for the full reference. Catalogs support SPICE kernels, TLE data, Keplerian elements, and time-series simulation output — load any combination and get an interactive 3D mission visualization in the browser, no rendering code required.Read the full README ↗An interactive 3D viewer for spacecraft missions, built for the browser. Explore trajectories, instrument fields of view, planetary surfaces and mission events; move through mission time and inspect eclipses or close approaches in 3D and on a shared timeline. Cosmolabe loads SPICE kernels, TLEs and sampled trajectory data through JSON catalogs, with a standalone viewer and reusable TypeScript libraries.
Try the viewer · Get started · Catalog format · Architecture
Watch the 24-second Clipper flyby · Download MP4
Jupiter emerges behind Europa before a pullback to the system, with a rendered wide-angle instrument view. FOVs come from instrument kernels; pointing is illustrative and target-facing, without CK attitude coverage.
Select a spacecraft or body to inspect or follow it. Tools open in movable panels, while the bottom timeline shows time, event windows and geometry plots. See workflow details and data requirements.
Launch the hosted viewer and choose an example catalog.
To run locally, use Node.js 20+ and install Git LFS before cloning to download tracked binary assets:
git clone https://github.com/AaronPlave/cosmolabe.git
cd cosmolabe
npm install
npm run build
npm --prefix apps/viewer run dev
Open the URL printed by Vite. Analytical examples need no SPICE kernels; mission examples may need additional downloads, and generated terrain needs local setup. See asset prerequisites and development commands.
| Example | Explore |
|---|---|
| Europa Clipper | Europa encounters, spacecraft model and instrument FOVs |
| Cassini Saturn Tour | Saturn orbit insertion, Titan and Enceladus encounters |
| LRO at the Moon | Lunar orbit, terrain and imagery |
| ISS (TLE) | Satellite propagation without SPICE |
| Psyche | An interplanetary cruise trajectory |
| Earth–Moon Scripted Tour | Scripted camera, time and display changes |
Browse the full catalog index or configure another catalog source.
| LRO — lunar terrain and imagery | Cassini — Saturn orbit insertion |
|---|---|
| Clipper — instrument FOV | Measurements — Clipper to Europa |
Event Finder — closest approach and distance profiles
Ingenuity at Jezero; requires a locally generated fused terrain product.
Plan surface data fidelity and estimate storage offline with versioned planetary GeoJSON plans, independent imagery/elevation targets and local source metadata.
Capture recipes, the scripted Moon tour and video recreation.
Use the standalone viewer, embed its complete workspace in any web page — with spacecraft state, activities, time and selection supplied by the host (embedding guide, reference host) — or build on the TypeScript packages directly. The viewer combines a queryable universe model with injected SPICE/frame services and a renderer; core and control have no rendering or DOM dependencies.
| Role | Packages |
|---|---|
| Mission data and host control | Core, Control |
| Rendering | Three.js, Cesium, Cesium adapter |
| Geometry and formats | CSPICE WASM, Interop |
Catalogs support a subset of Cosmographia definitions plus Cosmolabe extensions; CCSDS format support is scoped to the implementations in Interop. See architecture and compatibility details, choosing a renderer and the roadmap.
Named after Jacques Besson's 1566 cosmolabe. The catalog format derives from NASA JPL's Cosmographia, created by Chris Laurel, author of Celestia.
Cosmolabe uses CSPICE compiled to WebAssembly via cspice-wasm, accessed
through @cosmolabe/frames, Three.js,
3DTilesRendererJS,
CesiumJS and
satellite.js.
Independent SPICE expectations and test coverage are documented in
SPICE validation. Component and data attribution,
including historical reference provenance, is retained in NOTICE.
Contributing · Code of conduct · Security reporting · Apache-2.0 license
This software is independently developed and maintained, and is not approved or endorsed by NASA or JPL.