Monorepo
Workspaces: packages/*, templates/app, apps/*. Layout:
Project layout.
Local commands
Section titled “Local commands”| Command | What it covers |
|---|---|
bun run check | Types across workspaces, no-leaks, bun test packages |
cd templates/app && bun run ok | Template as an application (check + unit tests) |
cd templates/app && bun run test:db | Full template suite (needs Postgres) |
bun run docs:check | Docs sync + astro check + production build |
Root check does not run the template suite or the docs build — those are
separate so a library change does not wait on Postgres or Astro.
CI jobs
Section titled “CI jobs”- library and types —
typecheck,leaks,bun test packages(no services) - documentation —
docs:check - template — Postgres service;
check+test:dbundertemplates/app - create-pleyn — generate with
--no-docker --no-install, point at workspacehtmx-contractviafile:, then run the generated app’s checks
Registry install is the happy path for real users (bun create pleyn —
create-pleyn /
htmx-contract on npm). The CLI
CI job keeps the --no-install + file: rewrite so it always exercises the
workspace library — see Publishing.