Chirp is one layer of a larger set of small, single-purpose Python packages by the same author — collectively the Bengal ecosystem. Every layer is pure Python with no Node/npm build step, and all are built for Python 3.14t free-threading.
You don't need to learn any of them to use Chirp. It pulls in only what it needs: the Kida template engine and the Pounce ASGI server by default, and the Patitas markdown parser (with its Rosettes highlighter) only when you opt into markdown rendering. This page maps the stack so you can see where Chirp sits and where to go for each piece.
The packages
Static site generator. Builds these docs.
Content runtime (ecosystem framing — not used by Chirp).
Web framework — you are here.
ASGI server. A default Chirp dependency.
Template engine. A default Chirp dependency.
Markdown parser. Opt-in viachirp[markdown].
Syntax highlighter. Arrives transitively with Patitas.
Chirp uses Kida directly for every render; see Kida integration for how templates, blocks, and fragments fit together. For how Chirp itself is layered, see how Chirp is layered internally.
How the layers depend on each other
Solid edges are baseline dependencies; the dashedChirp ⇢ Patitasedge is the
opt-in markdown extra (chirp[markdown]). Purr's edges reflect the ecosystem's own
framing — Chirp does not use Purr.
Python-native. Free-threading ready. No npm required. Ready to build? Try the quickstart.