Local development
The same compose files production uses will run the whole stack on a Mac. Docker Desktop must be running. Nothing else is required — no SOPS, no age key, no Tailscale, no VPS access, no secrets of any kind..env.local is created for you from
.env.local.example on first run.
Verified cold
The local runbook was verified on 2026-07-26 againstmain at 0b40403 — not “it worked
on the machine that built it”, but a fresh clone into an empty directory on a Mac with
every stack image deleted, no volumes, no networks, no .env.local and an empty build
cache. Every command was run exactly as written, and nothing outside the runbook was
needed.
Cold start is roughly a minute, most of it Grafana installing plugins. The point of those
commands is that the result is re-verifiable at any time — run them and check.
Source documents
docs/runbooks/local-development.md— the full runbook, local URLs, and what differs from production