Skip to content

πŸ› οΈ Developer Experience (DX) ​

Making it easy and enjoyable for developers to be productive.

First 5 minutes ​

A new developer should be able to:

  1. Clone the repo
  2. Run one command to install dependencies
  3. Run one command to start the app
  4. See the app working locally
markdown
# README.md
## Quick start
git clone <repo>
npm install
npm run dev
# App runs at http://localhost:3000

DX essentials ​

Code formatting (automated) ​

  • Prettier + ESLint with auto-fix on save
  • Pre-commit hook with lint-staged
  • Zero debate about code style

Type safety ​

  • TypeScript in strict mode
  • Zod or similar for runtime validation
  • Generated types from API schemas

Fast feedback loops ​

  • Hot reload in development
  • Fast test runner (Vitest > Jest)
  • CI pipeline under 10 minutes
  • Instant linting in IDE

Documentation ​

  • Clear README with setup instructions
  • API documentation (auto-generated from code)
  • ADRs for architectural decisions
  • Runbook for common operations

Tooling checklist ​

  • [ ] Package manager locked (package-lock.json / pnpm-lock.yaml)
  • [ ] .nvmrc or .tool-versions for runtime version
  • [ ] .env.example with all required env vars
  • [ ] Pre-commit hooks (husky + lint-staged)
  • [ ] Editor config (.editorconfig, recommended extensions)
  • [ ] Docker Compose for local dependencies
  • [ ] Seed script for development data

Onboarding checklist for new devs ​

  • [ ] Access to repo, CI, project board
  • [ ] Local dev environment running
  • [ ] Completed first "good first issue"
  • [ ] Walkthrough of architecture and key patterns
  • [ ] Assigned a buddy for questions

Pergame Knowledge Base