Skip to main content

๐Ÿค Contributing to kwatch

Thank you for helping make Kubernetes easier to operate. You do not need to be a Kubernetes expert to contribute. Documentation, bug reports, tests, ideas, and small fixes are all useful.

๐ŸŒฑ Choose a way to helpโ€‹

  • ๐Ÿ› Report a bug
  • ๐Ÿ’ก Suggest an improvement
  • ๐Ÿ“š Improve a guide or example
  • ๐Ÿงช Add or improve tests
  • ๐Ÿ’ป Fix an issue or build a feature
  • ๐Ÿ’ฌ Ask questions in Discord

Before starting a large change, open an issue or discuss it in Discord. This helps us agree on the approach and avoids duplicated work.

๐Ÿ› ๏ธ A normal code contributionโ€‹

  1. Find an issue or open one describing the problem.
  2. Fork the repository and create a focused branch.
  3. Make the smallest change that solves the problem.
  4. Add or update tests and documentation.
  5. Run the verification command locally.
  6. Open a pull request against main and explain what changed.

Read Cloning and building for local setup and the GitHub workflow for the Git commands.

โœ… Before opening a pull requestโ€‹

go build ./...
go vet ./...
go test ./...
golangci-lint run
make verify

Keep changes focused, use clear names, and add comments only when they explain a non-obvious decision. If a change affects configuration, alerts, persistence, or release behavior, update the matching docs too.

๐Ÿ“ Documentation changesโ€‹

Write for the person who is seeing the problem for the first time:

  • Start with the goal and the result.
  • Show a copy-pasteable example.
  • Explain Kubernetes terms the first time you use them.
  • Say whether a setting is on by default or opt-in.
  • Never include real credentials in examples.
  • Keep version pins inside the release-managed README blocks only.

๐Ÿ“œ Community rulesโ€‹

Please follow the Code of Conduct. Security issues should be reported privately using the process in SECURITY.md.