Chirp 0.2.0
Devtools overlay, View Transitions tooling, dev browser reload, clearer startup errors, examples reorg, and config default updates
Focus: developer experience (modular debug overlay, VT dev helpers, optional browser reload), logging and SSE alignment with Pounce, reorganized examples, and documented default changes for View Transitions and log format.
Highlights
Chirp devtools
The debug experience is now a modular JS bundle underchirp/server/devtools/(inspector, activity, errors, swap highlight) instead of a single large injected script. The htmx debug path is wired through this stack for easier maintenance and extension.
View Transitions dev tooling
Development helpers ship alongside View Transitions so you can debug VT behavior next to htmx-boosted navigation in debug builds.
Browser dev reload
AppConfig.dev_browser_reload enables an optional SSE-driven browser refresh when files matching reload_include (and extra reload_dirs) change, so you can iterate on templates and static assets without manually reloading.
SSE, logging, and startup errors
SSE lifecycle and logging are improved and aligned with Pounce. Startup and terminal error paths produce clearer formatted messages when boot fails or when errors are printed to the terminal.
Examples layout
Examples are split into examples/chirpui/ (apps that use chirp-ui) and examples/standalone/ (minimal Chirp). Paths in docs and READMEs point at the new layout.
Shell and contracts
ShellSubmitSurface is part of the public API. Shell regions and shell-action wiring see related updates. Contract checks and content negotiation (including OOB-related paths) are expanded; render-plan debug snapshots support tests and diagnostics.
Changed
- htmx debug — Implemented through the new devtools bundle; the old monolithic debug script is removed from the tree.
- CLI —
chirp newandchirp runrefinements, with scaffold templates in dedicated modules. - Docs — App shell, UI layers, SSE/streaming guides, layout patterns, and tutorial cross-links updated.
Dependencies
kida-templates>=0.2.9bengal-pounce>=0.3.1chirp-ui>=0.2.1(optional, forchirp[ui])
Breaking Changes
Config defaults (no API removals, but behavior may differ if you relied on old defaults):
AppConfig.view_transitionsnow defaults toTrue(wasFalse). Full-page responses may include View Transition meta/CSS unless you setview_transitions=False(recommended for API-only apps or tests that assert raw HTML without VT injection).AppConfig.log_formatnow defaults toauto(wasjson): compact colored lines on a TTY, JSON when piped—aligned with Pounce. Override withCHIRP_LOG_FORMAT(auto,text, orjson).
Examples: If you linked to example paths underexamples/ directly, update to examples/chirpui/... or examples/standalone/...as appropriate.
Upgrading
Optional extras:
- UI layer:
pip install "bengal-chirp[ui]"
If you need the previous defaults explicitly:
AppConfig(view_transitions=False, log_format="json")
(or set CHIRP_LOG_FORMAT=jsonin the environment).