Thanks for helping improve Caddystat! Please follow these guidelines to keep things smooth.
- Fork and clone the repo.
- Install Go (1.22+) and Node (for the web assets).
- Run the API locally:
go run ./cmd/caddystat. - Build the frontend (from
web/):npm install && npm run build.
- Keep changes small and focused; open an issue before large refactors.
- Add tests when you add behavior or fix a bug. Go tests live alongside code; frontend tests belong in
web/. - Run
go test ./...before sending a PR. For UI changes, include screenshots or short notes. - Follow Go formatting (
go fmt) and keep configs inCaddyfile/docker-compose.ymlconsistent with examples inREADME.md. - Document new env vars or config flags in
README.md.
- Describe the problem, the approach, and any trade-offs.
- Note any breaking changes.
- Ensure CI/tests pass; link related issues if they exist.
By participating, you agree to follow the Code of Conduct.