What It Teaches
A full Kanban board built the way a real Chirp app is built: a persistent app shell, drag-style mutations that swap only the columns and stats that changed, and a live feed so every connected client sees the same board. Reach for this example when you want to see how the pieces fit together in one app — auth, filesystem pages alongside explicit API routes, htmx fragments, out-of-band swaps, and Server-Sent Events — rather than one feature in isolation. If you only need one technique, start from the smaller examples; this is the "everything together" reference.
It demonstrates:
- persistent
chirpui-app-shellchrome - filesystem pages plus explicit API routes
- filter sidebar updates with htmx
- OOB swaps for columns and stats
- SSE live sync across connected clients
Run It
PYTHONPATH=src python examples/chirpui/kanban_shell/app.pypytest examples/chirpui/kanban_shell/Then openhttp://127.0.0.1:8000/.
Source
For contributors: the canonical app-shell fixture
This example is the broadest end-to-end exercise of app-shell behavior in the repo. It is the fixture to reach for when changing OOB regions, SSE integration, shell actions, auth middleware setup, or route and page conventions — a change that breaks the shell contract tends to break here first.