Thanks for contributing to mppx-go.
- Read README.md for architecture, examples, and package layout.
- Review CODE_OF_CONDUCT.md.
- Check existing issues and pull requests to avoid duplicate work.
Requirements:
- Go
1.25+
Install dependencies and verify the project:
go mod download
go test ./...- Fork the repository and create a feature branch from
main. - Make focused changes with clear commit messages.
- Add or update tests for behavior changes.
- Run formatting, linting, and tests locally before opening a PR.
- Open a pull request with:
- a short summary of what changed,
- reasoning behind the change,
- test evidence (command output or explanation),
- any migration notes if relevant.
- Keep public APIs clear and documented.
- Prefer small, composable functions and explicit errors.
- Preserve backward compatibility unless the change is clearly breaking and documented.
Formatting and linting:
gofmt -w .
golangci-lint runIf golangci-lint is not installed, install it first:
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest- Add unit tests for all new logic.
- Add regression tests for bug fixes.
- Keep tests deterministic and isolated (no hidden network or external state dependencies unless explicitly needed).
Run:
go test ./...By contributing, you agree that your contributions are licensed under the project license in LICENSE.