⭐️ Featured

Checks the project against this definition and fails the calling test if anything is off.
Declares a group. Nest group calls to nest groups.
Declares a role: "UseCase" { title = "Use case" }.
Declares where files of this role may live. Call it once per place.
Entry point of the DSL. Declaring a group or a role inside the block registers it; there is no separate "add it to a list" step.
Attaches a template to this file declaration: .template { }'s block is stored, replayed once per run with that run's --arg values bound, and its return value becomes the file's content.
Declares a named constraint over the files the block around it matched, written with Konsist.

All modules:

Link copied to clipboard

The DSL to declare a project's architecture, the check that walks a real project against that definition, and the processor that turns the same definition into generated documentation or generated code.

Link copied to clipboard

Adds konsist { } to the katachi DSL: a constraint written with Konsist, evaluated as one more constraint kind alongside katachi's own.