Introduction
Assemble modular full-stack TypeScript monorepos with Stanza.
Stanza is a shadcn/ui-style CLI for assembling modular full-stack TypeScript monorepos. Pick a framework, UI, database, ORM, and auth — Stanza vendors idiomatic code directly into your repo, with no additional runtime dependencies to maintain afterwards.
Stanza is in early alpha!
Expect breaking changes, rough edges, and incomplete modules. Take extra care when pointing
stanza-cli at an existing project; commit your work first, and review the output thoroughly
before keeping it.
Why Stanza
addworks afterinit. Runstanza addon an existing project. It reads yourstanza.jsonmanifest, resolves peer constraints, and picks the right adapter for your stack — so adding auth to a Next + Drizzle app writes different code than adding it to a TanStack Start + Prisma app.- Your code, vendored. Generated files land in your repo verbatim. There's no
@stanza/runtimepackage to install, and nothing to upgrade out from under you — the code is yours to edit. - Open registry. Modules are plain static JSON. The CLI ships with a default registry, but you can point it at your own host with
STANZA_REGISTRYand serve custom modules.
How it fits together
You choose modules across a small set of categories — framework, ui, db, orm, auth, tooling, testing, and more. Stanza scaffolds a clean monorepo, vendoring each module's templates, dependencies, and environment variables into the right place: app shell code into your app, data and auth layers into their own workspace packages. Later, stanza add and stanza remove layer modules in and out without you hand-editing the wiring.
Next steps
- Getting started — create your first project and add a module.
- Concepts — the mental model: categories, vendoring, peers, and the manifest.
- CLI reference — every verb, flag, and environment variable.
- Agents — drive Stanza from Claude Code, Codex, or any coding agent.
Or skip ahead and assemble a stack visually with the builder.