Our stack

What we've built

Every system on this page is ours: written, run and maintained in-house, on our own operations. Status is stated plainly, and the numbers were measured from the code on 3 November 2026.

Lines of Rust
41,022
Rust test functions
407
Registered data sources
23
Always-on services
6

How it connects

One way in, one way out

Diagram of the Zero Dev Group stack. Public data feeds and Amphib field telemetry enter through Dragonfly, the conduit, which the Engine calls on a cadence. Dragonfly banks everything in the store: one SQLite file per domain plus PMTiles map files. Spatial, the map server, and the operations console read from the store; local inference serves the agent crew in the console. Porter builds and deploys every service. All of it is internal and publishes one way to the public site.
Internal systems are never reachable from the internet. They publish one way to this site.

The systems

Eight systems, one bench

In service

Dragonfly

The conduit

Fetch, normalize, store. Every byte of outside data enters through one registered source list and is banked into one SQLite file per domain, with map tilesets kept as plain files beside it. No AI in the pipe: fetching is deterministic code.

Rust · clap · rusqlite · tokio
26,543 lines of Rust · 245 test functions · 23 registered sources

In service

Dragonfly Engine

The clock

Decides when, never what. Calls the conduit on each feed's cadence, one feed at a time, skips anything still fresh after a restart and backs off on repeated failures.

Rust · rusqlite · no async runtime
577 lines of Rust · 2 test functions

In service Demo upon request

Dragonfly Spatial

The map server

A self-hosted map product: our own PMTiles basemaps, live USGS gauge and earthquake layers, tides, weather and aerial imagery, served by one binary to a MapLibre GL front end with no CDN.

Rust · axum · MapLibre GL · PMTiles
5,119 lines of Rust · 5,919 lines of front end · 59 test functions

In development Demo upon request

A jon boat's bow on a calm river at golden hour: a black hard-shell case beside a sensor rack carrying a twin-lens camera unit, a whip antenna and rows of olive gear pouches.

Dragonfly Amphib

Field telemetry

Boat operations and a small scout vessel. An on-board GNSS logger records the track, stores it and forwards it ashore, where the conduit digests it into the store and the maps read it back.

C++ firmware (PlatformIO) · Python tools
Logger firmware v0.1.0 · 1,413 lines of firmware and tools

In service

Operations console

The workbench

Our internal console: a file vault browser, a real terminal, the bench log every agent and engineer writes to, and map-source administration. Home network only, by design.

Rust · axum · plain JavaScript
6,097 lines of Rust · 65 test functions

In service

Local inference

AI on the premises

Large language models running on our own four-core machine, CPU only, behind an OpenAI-compatible API. Prompts stay in the building unless we choose a hosted provider for a task.

Rust · llama.cpp · GGUF models
803 lines of Rust

In service

Porter

Build and deploy

Pulls, commits and pushes across all eleven of our repositories, and installs each service from its own deploy script, locally and never by force.

Rust · clap
773 lines of Rust · 8 test functions

In development

This site

The public face

One Rust server and plain HTML and CSS. Nothing loads from another origin, there are no trackers, and our internal systems publish to it one way.

Rust · axum · static HTML and CSS
1,110 lines of Rust · 28 test functions

How we build

Four rules we keep

One way in

Every outside feed is named in one registry. If it isn't registered, it doesn't enter.

No AI in the pipe

Fetching and normalizing are deterministic code. Intelligence works at the edges, never in the data path.

Files, not servers

One SQLite file per domain and map tiles as plain files. Copying the store is a backup.

Internal stays internal

Internal tools never face the internet. The public site is its own host, and publishing runs one way.

Work with us

Put this stack to work

Engagements by arrangement.