Contributions are welcome across the Go services, React frontend, deployment assets, documentation, and tests.
- Search existing issues and pull requests before opening a duplicate.
- Use the latest supported Go version from
go.modand Node.js 22 or newer for frontend work. - Read AGENTS.md for repository-specific workflows and ARCHITECTURE.md before changing shared runtime behavior.
- Report vulnerabilities privately according to SECURITY.md, not in a public issue.
For substantial behavior or architecture changes, open an issue first so the approach and compatibility impact can be discussed.
Build the complete project:
make buildRun the Go test suite:
go test ./...Validate frontend changes:
make frontend-testWhen public REST behavior changes, regenerate and verify the API specification:
make openapi
make openapi-checkRelease and package changes should also pass:
make release-check
make release-buildThe local stack can be built and started with:
cp .env.example .env
make docker_dev_certs
make docker_dev_build
make docker_dev_upReview the development credentials in .env before use. Never commit that file, generated certificates, tokens, or built artifacts.
Keep each pull request focused and include:
- The problem being solved
- The resulting behavior
- Security, compatibility, or operational impact
- Tests and validation performed
- Screenshots for visible frontend changes
Follow existing code patterns, format Go changes with gofmt, and add focused regression coverage for changed behavior. Generated OpenAPI files, sample configuration, package metadata, and documentation should remain synchronized with the implementation.
By contributing, you agree that your changes are provided under the repository's MIT license.