Required files per member
The PII table is always present. A member that handles no personal data says “None” and names the change that would make it revisit the answer.
Kinds
- Apps: vite, expo, docs, next.
- Packages: domain, platform, lib, tooling.
- Services: plain TypeScript members at
services/<name>;stackra gengenerates the Encore app into.stackra/encore/(0124).
Conventions
- Package
exportslist@stackra/source(./src/*.ts) first, thentypes/defaultin tsdown’sdist/*.d.mts/dist/*.mjs(0025). - Tests sit beside the code, in
src/**/__tests__. package.jsonkey order: name, version, private, description, license, type, main (Expo only), scripts, dependencies, devDependencies.
Scaffolding
stackra new <kind> <name> --description "<one sentence>" [--category <c>] [--entries react,native|none] [--data] [--title "<Title>"] [--port <n>] [--repo <path>] [--dry-run] copies a template from tools/scaffold/templates, replaces the tokens, copies the target repo’s LICENSE, and formats the result. Then run pnpm install and pnpm verify.
--description is required: the sentence becomes the package.json description and opens README.md and AGENTS.md. Members come out in the programming model v3 shape (ADR 0294 rule R12). Shapes: ADR 0126. Flags and tokens: Scaffolding.