kida-templates 0.11.0
v0.11.0
Released 2026-07-07.
Kida 0.11.0 is a checkpoint release for the server-side component system. It
makes the existing-framework path runnable and tested, hardens release and CI
gates, and splits the largest partial-evaluation phases into focused modules
without changing Kida's public API or runtime dependency contract.
Added
- Framework-first quickstarts — Current Flask, Django, and FastAPI/Starlette
guides now show typed components, full-page rendering, named fragment routes,
form handling, and the Jinja2 scoping migration path. - Runnable integration examples — Flask, Django, and FastAPI component apps
exercise real framework clients, fragment rendering, and output escaping in
the standard test suite. - Pyodide playground direction — The planning record now recommends a
worker-isolated, JSON-context browser playground, with compatibility and
safety gates required before implementation.
Changed
- Component-first product documentation — The README, package metadata,
landing page, and documentation navigation now lead with typed props, named
slots, and static call validation rather than generic template-engine copy. - Python components ecosystem framing — Public pages no longer present
Bengal as the identity of the stack. Bengal remains the current documentation
build tool and a supported legacy integration while the broader stack evolves. - Phase-owned partial evaluation — Constant folding, dead-code elimination,
expression transforms, loop unrolling, component inlining, and temporary-node
flattening now live in focused modules. The main evaluator fell from 2,307 to
1,247 lines, with free-threaded stability and benchmark gates unchanged. - One authoritative CI contract — Local and CI Ruff scopes now agree, public
examples run in the standard suite, and duplicate type-check lanes were
consolidated into the report-producingType Check (ty)job. - Release automation fails early —
make gh-releaseverifies a clean tree,
the exact remotemaincommit, curated release notes, and tag consistency
before creating a release that triggers trusted PyPI publishing.
Fixed
- Published install commands use the real distribution name — Site snippets
installkida-templates; Python code continues toimport kida. - Design-system example imports components correctly — The example uses
explicit{% from ... import ... %}declarations instead of relying on
isolated{% include %}scope. - Fallback failures are diagnosable — Cache cleanup, loader discovery,
README detection, terminal width, and related best-effort paths retain their
graceful behavior while exposing useful debug context.
Upgrade Notes
- No runtime API, template syntax, or CLI migration is required from 0.10.x.
- Install with
uv add kida-templatesorpip install kida-templates; import
the package askida. - Python 3.14 remains the minimum supported version, with Python 3.14t used for
the project's free-threaded verification and release gates. - Framework integrations remain optional development/test dependencies. The
installed Kida runtime still has zero dependencies.
Why this checkpoint
The work since 0.10.0 strengthens adoption and maintainability rather than
expanding public surface area. Publishing now gives framework users a stable,
tested checkpoint before the surrounding stack shifts into its next phase.