Architecture

Two servers, one perimeter

A lightweight application layer in PHP and a Python backend that does the heavy lifting. Both run inside your perimeter — on a server, a NAS, in a secured cloud tenancy, or in Docker.

Layers

What runs where

FRONTEND Browser SPA HTML5 · Leaflet.js · vanilla JS satellite.js (SGP4) · Web Workers APPLICATION PHP 8 + Apache Auth · catalog · orders · providers Access control · audit · REST API COMPUTE Python FastAPI OTB · ESA SNAP · native ops ONNX inference · async jobs STORAGE SQLite (WAL) Catalog · users · AOIs · orders · jobs HTTPS PROXY WEBSOCKET · ws/collab/{room}
LayerTechnologyRole
FrontendHTML5, Leaflet.js, vanilla JS, satellite.jsMap, orbits, AOIs, wizards, analysis panels
Application backendPHP 8, Apache, SQLiteAuth, catalog, orders, provider connectors, proxy to Python
Compute backendPython, FastAPI, uvicornImage processing (OTB, SNAP, native Python), ML inference
DatabaseSQLite in WAL modeSatellite catalog, users, AOIs, orders, jobs, detections, audit
Third-party librariesVendored locallyNo external CDN dependency — the application works offline
Real-timeWebSocket via FastAPIShared collaboration workrooms

Deployment

Runs where your data is allowed to be

Docker image

The full stack as a container image — the fastest route to a reproducible deployment in your own environment.

Server, NAS or private cloud

Apache with PHP 8 plus a Python virtual environment. It runs on a rack server, on a network-attached storage appliance, or inside your own secured cloud tenancy — the hardware floor is deliberately low.

Air-gapped friendly

Dependencies are vendored, not pulled from CDNs. TLE updates and provider access are the only outbound needs — and both can be scoped or mirrored.

Scheduled jobs

TLE refresh from CelesTrak twice daily and monitoring rule evaluation every 15 minutes, both driven by cron.

PWA & mobile

Installable progressive web app with a versioned service worker cache, offline support, bottom navigation and a responsive mobile layout.

Administration

Admin panel for users, teams, satellites, providers, access rules, audit, system health and embargoed zones, plus billing, quotas and a pipeline marketplace.

In the interface

Details that save minutes every day

Command palette

Ctrl + K reaches every command in the application.

Guided tour

An interactive walkthrough for new users and demo accounts.

Time control

±24 h time slider with auto-play, UTC clock and a NOW button.

Persistent state

Viewport, AOI visibility and workspace restored on reload and on login.

Deploy it where it belongs

Tell us your infrastructure constraints and we will walk you through the deployment options.

API & SDK