π οΈ Developer Experience (DX) β
Making it easy and enjoyable for developers to be productive.
First 5 minutes β
A new developer should be able to:
- Clone the repo
- Run one command to install dependencies
- Run one command to start the app
- See the app working locally
markdown
# README.md
## Quick start
git clone <repo>
npm install
npm run dev
# App runs at http://localhost:3000DX 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)
- [ ]
.nvmrcor.tool-versionsfor runtime version - [ ]
.env.examplewith 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