Thanks for your interest in contributing! Gas Town is experimental software, and we welcome contributions that help explore these ideas.
- Fork the repository
- Clone your fork
- Install prerequisites (see README.md)
- Build and test:
go build -o gt ./cmd/gt && go test ./...
We use a direct-to-main workflow for trusted contributors. For external contributors:
- Create a feature branch from
main - Make your changes
- Ensure tests pass:
go test ./... - Submit a pull request
- Follow standard Go conventions (
gofmt,go vet) - Keep functions focused and small
- Add comments for non-obvious logic
- Include tests for new functionality
Good first contributions:
- Bug fixes with clear reproduction steps
- Documentation improvements
- Test coverage for untested code paths
- Small, focused features
For larger changes, please open an issue first to discuss the approach.
- Use present tense ("Add feature" not "Added feature")
- Keep the first line under 72 characters
- Reference issues when applicable:
Fix timeout bug (gt-xxx)
Run the full test suite before submitting:
go test ./...For specific packages:
go test ./internal/wisp/...
go test ./cmd/gt/...Open an issue for questions about contributing. We're happy to help!