| ▲ | Show HN: Sidereon: GNSS and Astrodynamics (Python, Rust, JavaScript, C, Elixir)(sidereon.dev) | |
| 3 points by nberkman 18 hours ago | ||
I’ve been building Sidereon, an MIT-licensed GNSS positioning and astrodynamics engine. The submission is a browser demo running the Rust core client-side through WASM. Source for this: https://github.com/neilberkman/sidereon The idea is one engine for both the receiver and spacecraft sides: SPP/RTK/PPP, RINEX/RTCM/NTRIP, Galileo HAS/SSR, GNSS/INS fusion, SGP4 and numerical propagation, orbit determination, conjunction screening, pass prediction, reference frames, and time systems. Python, Rust, JavaScript/WASM, C, and Elixir all use the same core. Several features came directly from open issues in widely used GNSS and astrodynamics libraries: multi-constellation ARAIM, Galileo state-space corrections, station-displacement corrections, sidereal multipath filtering, and track cleanup without an IMU. Tests compare results with RTKLIB, the 33-satellite Vallado/CelesTrak SGP4 verification corpus, pinned Skyfield frame vectors, Karney’s test set, and the published WG-C ARAIM example. The Vallado corpus and Skyfield vectors match at 0 ULP. The language-specific interfaces are here: Python: https://github.com/neilberkman/sidereon-python JavaScript/WASM: https://github.com/neilberkman/sidereon-wasm C: https://github.com/neilberkman/sidereon-c Elixir: https://github.com/neilberkman/sidereon-ex Much of the code was written with AI coding agents, with me very much in the loop. I'd really appreciate any feedback! | ||