Teams

Every layer is reviewable, and every change is typed.

Large organisations do not need the fastest way to start; they need to know what is running, who may do what, and how a change reaches production. Stacks keeps the schema, the access rules, the schedule, and the infrastructure in TypeScript files that go through the same review as application code.

What this always turns out to involve.

The work that arrives whether you planned for it or not.

Reviewing what actually runs

Infrastructure edited in a console leaves no diff, and no way to know when it changed.

Access rules spread out

Permissions checked ad hoc in controllers and templates cannot be audited as a whole.

Long-lived migrations

A decade of schema history has to stay reproducible, on more than one database engine.

Onboarding at scale

A stack assembled from twenty libraries costs weeks of ramp per engineer.

What is already in the box.

All of it in the same install, typed against the rest of your application.

Infrastructure in the repo

config/cloud.ts describes sites, DNS, certificates, CDN, and mail records, so a change to production is a pull request.

Centralised authorisation

RBAC, gates in app/Gates.ts, and policies give one place to read what each role may do.

Model-driven migrations

Schema is diffed from models into reviewable SQL, against SQLite, MySQL, or PostgreSQL.

Auditability

Model events, logging, and queue history record what happened without bolting on an audit library.

Typed end to end

Views, routes, actions, models, and the API client share types, so contract changes fail at build time.

Encrypted configuration

buddy env:encrypt keeps environment values in the repository safely, with rotation as a command.

The layers it leans on.

Every one of these ships in the same install. Follow one to see what it covers.

From the command line.

Buddy scaffolds, runs, and ships this the same way it does the rest of the app.

buddy env:encrypt buddy migrate --diff buddy test

Projects of this shape usually grow into one of these.