Thank you for considering contributing.
- Install .NET 10 SDK.
- Install Docker Desktop (for Aspire-managed Postgres and Redis).
- Install the Aspire workload:
dotnet workload install aspire. - Clone the repo and run
./eng/scripts/run.ps1(Windows) or./eng/scripts/run.sh(Linux/macOS). - Install pre-commit hooks (required — prevents secret leaks before commits reach the remote):
See docs/development/secret-scanning.md for full details.
pip install pre-commit pre-commit install
- C# 14, nullable enabled, implicit usings, treat-warnings-as-errors.
- Run
dotnet formatbefore committing. - PRs must pass
dotnet format --verify-no-changesin CI.
- One feature or fix per PR.
- All new features need tests (see
tests/). - Follow the vertical slice pattern in
src/FlowLedger.Application/Features/. - Architecture tests in
FlowLedger.Architecture.Testsmust pass. - No sensitive data in logs or telemetry.
Use conventional commits: feat:, fix:, docs:, refactor:, test:, chore:.
By contributing you agree that your contributions are licensed under AGPL-3.0-only.