Skip to content

Alpha 0.0.x — what is stable

QuadKit is alpha. That word is doing real work: public APIs may change before 1.0, and you should pin 0.0.x in production. It is not a synonym for “the design is a mood board.”

This is the split we actually mean.

Four rules are not going to be a surprise in 0.2:

  1. quadkit-contracts imports no QuadKit implementation packages. It owns shared protocols, types, and exceptions; its only runtime dependency is typing-extensions.
  2. Regular extensions do not depend on peer extensions. Cross-package boundaries are checked, with composite packages and specific documented exceptions handled explicitly.
  3. register() does not resolve. Bindings in, instances out in boot(). The type system is the gate.
  4. Domain failures are Result. The database dying is still an exception.

The repository’s import-boundary checks enforce the package-level rules in CI. Generated applications should follow the same design; the checks have documented exclusions and are not a blanket validator for every downstream app.

Those four rules are the whole product. Why I built QuadKit is where each one comes from, and why an agent that type-checks still needs them.

The project tree is the same kind of promise. There is one layout. The api starter lays it down; quadkit add and quadkit gen grow it in place without introducing a second shape.

  • Names and extra kwargs on tooling and web surfaces: the CLI, generators, and quadkit-web extras.
  • The generated API HTML. Do not treat a 1 MB api.md as a stable contract — the Guide and the protocols are.
  • Generated HTTP surfaces. Treat method signatures and response shapes as movable.

The first public cut was 0.0.4; the current published release is 0.0.50 (2026-11-09), with eighteen distributions on PyPI. See the changelog for current availability and the release history on PyPI for the file-level log. For the current alpha line, pin 0.0.x (uv add "quadkit>=0.0.50,<0.1").

Terminal window
uv add "quadkit-cli>=0.0.50,<0.1"
quadkit new project my-app --template api
cd my-app
quadkit run

Then Your First App. Follow the quickstart if you are an agent. Do not scrape this blog for the rules — /agents.md is the machine-readable agent guide; the repository’s CI workflows define which checks are enforced.