Contributing
This section is for people who change EUDIPLO itself. Pick the task below; the process rules (issues, pull requests, DCO sign-off, commit messages) live in CONTRIBUTING.MD.
| I want to⦠| Read |
|---|---|
| Set up the repository and run everything locally | Development setup |
| Change the backend (endpoint, migration, env var, adapter) | Backend architecture |
| Change the web client | Client development |
| Change the CLI | CLI development |
| Change a configuration file format | Configuration schemas |
| Run or write tests (unit, E2E, OIDF conformance) | Testing |
| Format and lint my change | Code quality |
| Write or fix documentation | Documentation |
| Cut a release | Releases |
Quick startβ
pnpm install
pnpm --filter @eudiplo/config-format build
pnpm --filter @eudiplo/sdk-core build
cp .env.example apps/backend/.env # then set MASTER_SECRET, AUTH_CLIENT_ID, AUTH_CLIENT_SECRET
pnpm dev:backend # NestJS API on http://localhost:3000 (nest start --watch)
pnpm dev:client # Angular client on http://localhost:4200
The backend package also has start (no watch) and start:debug (watch with the Node inspector). Development setup explains each step.
Before you open a pull requestβ
- Run the checks of the packages you touched:
pnpm run lint,pnpm run format:checkand the relevant tests. - Sign off every commit (
git commit -s) and use Conventional Commits. - A breaking change needs a
!or aBREAKING CHANGE:footer and an entry in the upgrade guide of the next major. - Update the documentation page that owns the behavior you changed.