Sub‑millisecond feel. Zero drama. Fewer moving parts. Faster reads. Small surface area.
No bundler. No JS build step. Prebuilt CSS, minimal JS. Pages stay fast, deploys stay boring.
FastAPI, Jinja2, Alpine.js. Less complexity means fewer failure modes and faster iteration.
Running on Fly.io, close to users. Auto-start, auto-suspend. Low latency without a big fleet.
Most interactions should feel instant. Local reads and a simple stack make that possible.