How to add a new module to the template — its contract, the registry slots
it must wire into, and the starter file layout. For what each shipped
module does, see ../../modules/.
- standards.md — module spec: file layout, route ownership, schema rules, the aggregate-file rule, the i18n / docs sync rule, and the test-coverage minimum.
- playbook.md — 10-step checklist for shipping a module, end to end. Use this as the implementation order.
- recipe.md — starter files (
schema.ts,service.ts,routes.ts,index.ts, test scaffold, doc skeleton) you copy intoapps/api/src/modules/<your-module>/andtests/e2e/modules/<your-module>/.
- openapi-standard.md — how a module wires its
routes into the generated OpenAPI spec (
describeRoute+validator). Every route a module exposes must appear in the spec. - policy-standard.md — how a module declares its
permission surface via
defineResource+ the route binding registry. Every module that owns user-facing data needs this. - cron-actions.md — how a module contributes a
scheduled action (spec / executor pattern, registration via
defaultEnabledandCRON_ACTIONS_ENABLED).