Introduction
stacks turns five production-tested templates into new projects with one command. Each generated project is a normal repository: no runtime dependency on stacks, no generator to keep around, nothing hidden. It runs on day one because the template it came from is itself a complete, running app.
npx @aurostack/stacks new nest-api ./api --name shop-apiThe templates
Section titled “The templates”| Template | What you get |
|---|---|
nest-api |
NestJS 12 API: Prisma on PostgreSQL, Redis, BullMQ queues, better-auth, Vitest, Docker Compose, a Scalar API reference at /docs, OpenTelemetry, optional Temporal |
react-app |
One Vite + React 19 app: RTK Query, better-auth sessions, a shadcn-style UI kit with light/dark themes, auth screens as routes, optional marketing site and admin console |
react-monorepo |
The same stack as separate apps (landing, auth, client, admin) over shared packages, with Yarn workspaces and Turborepo, sharing one session across subdomains |
node-worker |
A TypeScript worker: BullMQ consumers, Prisma against the API’s database, pino, PM2, Docker, optional Temporal and Puppeteer |
py-worker |
A Python worker on the same queues, SQLAlchemy on the same database, optional Temporal |
They are designed to be combined: an API, a web front end and one or more workers make up a typical project, and the defaults already agree on ports, queue names, cookie settings and telemetry.
What “production-ready” means here
Section titled “What “production-ready” means here”Every template ships with the parts a real project needs on day one and usually bolts on in week six:
- Configuration validated at startup, so a missing variable fails the boot, not a request.
- Auth (better-auth) with sessions, cookies and an admin superuser.
- Background work on BullMQ, and Temporal when work must survive crashes and deploys.
- Observability through OpenTelemetry and OpenObserve, on by default and silent until connected.
- Secrets pulled from Infisical, Docker images and Forgejo CI.
- Tests that run: unit and end-to-end for the API, typecheck, lint and format checks everywhere.
Every feature can be dropped (--without) or added (--with) at generation
time. See how stacks works.
Where to go next
Section titled “Where to go next”Install stacksnpm, the Claude Code plugin, or a clone.
Your first projectGenerate, configure and run an API in ten minutes.
After you generateEvery setting a new project needs before it goes live.
Choosing templatesWhich templates to combine, and monolith or monorepo.