Architecture
React + TypeScript SPA ──REST──▶ Go backend ──Docker Engine API──▶ dockerd (Tailwind, Recharts) ◀─WebSocket (live stats + logs)─┘The Go server embeds the built SPA (go:embed) and serves everything from one
origin, so the production artifact is a single executable.
| Layer | Technology |
|---|---|
| Backend | Go, chi, coder/websocket, official Docker SDK |
| Storage | SQLite via modernc.org/sqlite (pure Go, no CGO); metric history in Redis or memory |
| Auth | Argon2id, TOTP (pquerna/otp), JWT, optional LDAP |
| Frontend | React, TypeScript, Vite, Tailwind CSS, Recharts, React Flow, xterm.js |