Released: March 6, 2026

PageComposition API, Suspense + layout chain, htmx debug overlay, and kanban_shell example.

Added

  • PageComposition API — Python-first composition withViewRef, RegionUpdate, and PageComposition. Explicit fragment_block / page_blocksemantics and region updates for shell actions.
  • Suspense + layout chain — Handlers that returnSuspense from mount_pages routes 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 whenconfig.debug=True.
  • HX-Reselect header — Fragment responses sendHX-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-actions now use hx-swap-oob="innerHTML"to preserve container attributes during boosted navigation.
  • Contractsextract_mutation_target_ids() uses \baction\bin regex to avoid false positives.

Fixed

  • TemplateNotFoundError — Shell-actions OOB render catchesTemplateNotFoundErrorwhen 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]