Released: March 6, 2026
PageComposition API, Suspense + layout chain, htmx debug overlay, and kanban_shell example.
Added
- PageComposition API — Python-first composition with
ViewRef,RegionUpdate, andPageComposition. Explicitfragment_block/page_blocksemantics and region updates for shell actions. - Suspense + layout chain — Handlers that return
Suspensefrommount_pagesroutes now receive the full layout shell.layout_contextis merged so cascade values reach Suspense templates. - kanban_shell example — Full example with app shell, chirp-ui, mount_pages, OOB swaps, SSE, filter sidebar, and CRUD.
- htmx debug overlay — S-tier debug panel with activity log, inspector, and swap flash when
config.debug=True. - HX-Reselect header — Fragment responses send
HX-Reselect: *so htmx re-parses OOB swaps correctly. - Data layout patterns — chirp-ui guide documents UI layout patterns for app shells and content regions.
Changed
- Shell-actions OOB — Region updates for
#chirp-shell-actionsnow usehx-swap-oob="innerHTML"to preserve container attributes during boosted navigation. - Contracts —
extract_mutation_target_ids()uses\baction\bin regex to avoid false positives.
Fixed
- TemplateNotFoundError — Shell-actions OOB render catches
TemplateNotFoundErrorwhen chirp-ui is not installed and falls back to empty OOB.
Installation
pip install bengal-chirp==0.1.6
# or
uv add bengal-chirp==0.1.6
With chirp-ui:
pip install bengal-chirp[ui]