Quality Checks
Documentation of the quality gate scripts that run linting, formatting, type checking, and planned layering and secret checks via `bun run check`.
Quality Checks
The bun run check command runs a series of quality gates across all workspaces.
Components
Linting and Formatting (ultracite)
The ultracite tool runs both oxlint (for linting) and oxfmt (for formatting) in one command.
Type Checking
The vp run -r check-types runs the TypeScript compiler (tsc) in each workspace via the check-types script defined in each package’s package.json.
Planned Checks
Once the @os/core package is available, additional checks are planned:
check-layering: to enforce architectural layering.check-secrets: to prevent accidental committing of secrets.
These will be run as part of the bun run check command in the future.
Usage
Run the quality checks with:
bun run check
This command is also used in the pre-push hook (planned) and in CI.
Configuration
- Oxlint configuration: see oxlint.config.ts
- Oxfmt configuration: see oxfmt.config.ts
- TypeScript configuration: see tsconfig.json and the individual
tsconfig.jsonfiles in each workspace.
Related Documentation
- Setup - includes instructions on running the checks.
- Testing Strategy - for broader testing approach.