/the garage — 07 / 07
Personal project in progressBifrostControl Deck
An intelligence platform for strategic conflict simulation: live aircraft, live economies and a missile simulator, converging on one interactive 3D globe.
Bifrost backend — data feeds
OpenSkyconnected
11,000+ live aircraft, rendered on the globe in real time
FREDconnected
Economic indicators per country — GDP, inflation, unemployment, rates
Missilesconnected
Simulator loadout — 118 publicly documented systems
AISStreamplanned
Maritime traffic — backend WebSocket relay ready, globe layer in progress

/development
Personal project in progress focused on economic warfare, physical conflict, and realistic 3D simulation. It features an interactive dashboard for managing entities across the world with live operational context.
/stack
- Next.js
- Globe.gl
- Three.js
- FastAPI
- SQLAlchemy
- MySQL
- OpenSky
- FRED
- AISStream
/ux design
Designing the operational dashboard of the platform: information hierarchy for dense live data, interaction patterns for navigating entities on a 3D globe, and a dark interface language built for a high-focus, control-room feel.
/tools & methods
- Information architecture
- Data visualization
- Interaction design
- Dark UI
/architecture
Three tiers, one bridge: the Control Deck never touches an API key or an external provider directly — everything crosses the FastAPI backend, Bifrost's namesake.
Tier 01
Control Deck
Next.js frontend
A globe.gl scene with three.js sprites: aircraft rendered as SVG plane icons through a texture cache, colored by ADS-B category. Country polygons come from TopoJSON, a cloud mesh animates on demand, and shadcn/radix panels handle telemetry, economy snapshots and the missile loadout.
- globe.gl
- three.js
- TopoJSON
- shadcn/ui
- Tailwind 4
Tier 02
Bifrost Backend
FastAPI bridge
Every feed crosses this bridge — the browser never sees an API key. Routes delegate to per-provider services over a shared httpx client: OAuth-authenticated OpenSky calls, FRED queries composed into per-country economy snapshots, and a WebSocket relay that injects the AISStream key and forwards position reports downstream.
- GET /api/opensky/states/all
- GET /api/economy/country?name=Russia
- GET /api/missiles
- WS /api/aisstream/stream
Tier 03
Data Sources
Live feeds & storage
OpenSky Network for live aircraft states, flights and tracks; FRED for economic series; AISStream for maritime traffic; and a MySQL catalog of publicly documented missile systems, queried through SQLAlchemy.
- OpenSky REST
- FRED REST
- AISStream WS
- MySQL + SQLAlchemy
/the control deck




