Astraeus DemosAssetsGitHub
An open-source engine for space stories · TypeScript · Three.js

Everything in space, where it is right now.

Astraeus does the hard part of space on the web: time, orbits, reference frames and astronomical scale. Every body answers one question, where are you at this moment, and every answer says where it came from. You bring the story.

the one questionMIT
// Where was the Moon when Eagle landed?
moon.stateAt(Date.parse("1969-07-20T20:17:40Z"), "earth")

{
  frame:      "EQJ",      // J2000 equatorial
  center:     "earth",
  positionKm: [-385_000, -48_000, -31_000],
  provenance: {
    sourceType: "ephemeris",
    sources:    ["orb.js lunar series"],
  }
}
// JPL Horizons, same instant: −385,275 · −47,906 · −30,879 km

Four layers, one door in.

A planet, a spacecraft, a comet and twenty-five thousand meteoroids all enter the same way. Everything downstream draws them the same way.

  1. 01 · STATE

    Where and when

    Time scales, positions, velocities, orientation and frames, each with its source and accuracy.

    UTC·TT·TDBJ2000provenance
  2. 02 · SOURCES

    Plug in the data

    Planet theory, NASA mission samples, published orbits, measured meteor catalogues. Swap one without touching the rest.

    VSOP87Keplercatalogues
  3. 03 · DRAWING

    Safe at any scale

    True or readable scale, a floating origin so 51 AU stays steady, paths, labels, light and a real star sky.

    floating originmarkerssky
  4. 04 · STORY

    Time you can play

    Timelines, events, focus and follow, story panels that open as playback reaches their moment, and an info panel that shows what's measured and what's filled in.

    observedmodelledillustrative
  • 1question every body answers: where are you, now?
  • 25,588measured meteor orbits, drawn one by one
  • 51AUout to a comet's far end, without losing precision
  • 1settings file was all a new shower needed