Skip to main content

Local Development

Install dependencies

nvm use
npm install

Run in development mode

Uses ts-node — no compile step needed:

npm run dev

Build and run compiled output

npm run build
npm start

The server listens on port 8888 by default. Override with PORT:

PORT=9000 npm start

Run tests

npm test

Coverage thresholds are enforced at 80% statements/functions/lines and 75% branches. The report is written to coverage/ after each run.

Lint

npm run lint

ESLint runs with @typescript-eslint/recommended rules. console calls are errors — use the pino logger instead.

Pre-commit hooks

Husky runs lint-staged automatically before every commit. Any staged src/**/*.ts file is checked with ESLint and tsc --noEmit. The commit is blocked if either fails.