- PythonCore · Gateway · Forge · Range · Bridge
-
The simulation kernel, the API, dataset authoring, experiment management and the DIS
connector. Chosen for iteration speed and for the analysis and data ecosystem the work
sits in. Determinism is a property of how the kernel is written, not of the language —
fixed evaluation order, ordered collections, seeded streams and ORBIS's own transcendental
maths carry it.
- TypeScriptDeck
-
The operator client: React, Vite, Tailwind, MapLibre GL for the map and milsymbol for
MIL-STD-2525 rendering. The application is fully bundled — no CDN and no external font
host — and the API is same-origin, so the only thing standing between this client and an
air gap is the basemap: it streams tiles in the development posture and reads a staged
bundle in the deployed one. That switch is a single configuration value, and it is the
honest reason this is not yet claimed as finished.
- RustPlanned — Core, Atlas sampling
-
The kernel is intended to move to Rust once the model surface has stopped changing.
The reason is throughput, not correctness: the sense phase is the hot loop and scales with
sensors multiplied by targets. Porting a moving target would be the expensive mistake, so
the sequencing is deliberate.
- JavaPlanned — HLA bridge, space propagation
-
Library gravity, plainly stated: every HLA run-time infrastructure is Java, and Orekit is
the reference orbital mechanics library. Both live behind the Bridge boundary, so neither
reaches the kernel.
- DeploymentDocker · nginx · PostgreSQL
-
Containerised throughout and Linux-native. The API is reverse-proxied so the browser sees
exactly one origin, which keeps the content security policy as tight in development as in
an air-gapped build and removes the need for CORS entirely.