Contributing
Development Setup
Requirements
- Node.js — see
.nvmrcfor the required version - Yarn — required package manager (do not use npm or pnpm)
- Docker & Docker Compose
- PostgreSQL client (optional, for manual database access)
Getting Started
See the Installation Guide for full setup instructions.
Branch Strategy
| Branch | Purpose |
|---|---|
main | Production-ready releases |
qa | Pre-release testing |
development | Active development (PR target) |
All pull requests should target the development branch.
Commit Conventions
Follow Conventional Commits:
| Prefix | Usage |
|---|---|
feat | New features |
fix | Bug fixes |
docs | Documentation changes |
refactor | Code refactoring |
chore | Maintenance, dependencies, tooling |
test | Test additions/updates |
Code Standards
- Clean Architecture per domain
- TypeScript strict mode — no
any - Async/await — no
.then()/.catch() - Path aliases —
@/for imports - Zod for all validation
- kebab-case files, PascalCase types, camelCase functions
See Coding Standards for detailed patterns and conventions.
Adding a New Feature
- Define Prisma schema changes
- Create migration
- Create domain structure (DTOs, repository types, use cases)
- Implement repository, queries, controller
- Register in
src/api/hris/index.ts - Build frontend (pages, server actions, components)
- Add translations to
messages/en.jsonandmessages/pl.json