Appearance
Contributing
Development Workflow
Test-Driven Development (TDD) is required for all changes.
- Create a feature branch from
master - Write tests explaining expected behavior (Vitest / Playwright)
- Write minimal code to make tests pass
- Ensure
biome checkandtsc --noEmitpass - Commit (husky pre-commit hook runs biome automatically)
- Merge to
master
Code Style
- Biome for linting and formatting (configured in
biome.json) - TypeScript strict mode throughout
- No
anytypes without explicit biome ignore comments - Use
useLanguage()context for all user-facing strings (FI/EN)
File Organization
- Routes in
services/api/src/routes/ - Shared utilities in
services/api/src/lib/ - React components in
apps/dashboard/src/components/ - Pages in
apps/dashboard/src/pages/ - Types/models in
apps/dashboard/src/types/ - Contexts in
apps/dashboard/src/contexts/
Adding a New Feature
- If backend changes needed, add routes/utilities in
services/api/ - If frontend, add components and update relevant pages
- Update
api-client.tsfor any new API contracts - Update documentation in
docs/manual/