Use npm workspaces
Run these commands from the repository root. This monorepo uses npm workspaces for applications and shared packages, and Turborepo for repository-wide tasks.
Install dependencies
Use the lockfile for a reproducible install:
npm ci
Use npm install only when intentionally changing dependencies and the
lockfile.
Run repository-wide tasks
The root scripts delegate to Turborepo:
npm run dev
npm run build
npm run test
npm run check
dev, build, and test run matching workspace scripts. check runs Biome
across the repository.
Run one workspace
Pass the workspace name or path after --workspace:
npm run dev --workspace apps/docs
npm run test --workspace api
npm run build --workspace api
The API workspace scripts start the Fastify server, compile TypeScript, and run Vitest. They do not generate a database client.
Verify documentation
Run both checks after changing Docusaurus content or configuration:
npm run typecheck --workspace apps/docs
npm run build --workspace apps/docs
The production build also rejects broken internal links and images.