Thank you for your interest in contributing to Brisk!
- Go 1.25.0 or later
- Make (optional but recommended)
- Protocol Buffers compiler (for gRPC development)
git clone https://github.com/thebushidocollective/brisk.git
cd brisk
go mod tidy
make buildmake testbrisk/
├── cmd/
│ ├── brisk/ # CLI application
│ └── brisk-server/ # Remote cache server
├── internal/
│ ├── config/ # Configuration parsing
│ ├── hash/ # Deterministic hashing
│ ├── cache/ # Cache management
│ ├── executor/ # Command execution
│ ├── storage/ # Storage backends
│ ├── analytics/ # Analytics tracking
│ └── shell/ # Shell integration
├── pkg/
│ └── api/ # Public API and protobuf definitions
└── web/ # Web dashboard (future)
- Follow standard Go conventions
- Run
go fmtbefore committing - Use meaningful variable and function names
- Add comments for exported functions
- Write tests for new functionality
- Ensure existing tests pass
- Aim for good test coverage
- Use clear, descriptive commit messages
- Follow conventional commits format:
feat:for new featuresfix:for bug fixesdocs:for documentationtest:for testsrefactor:for refactoring
Example:
feat: add support for glob negation patterns
Implement support for excluding files using ! prefix in glob patterns.
This allows users to exclude test files from build inputs.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Ensure tests pass
- Update documentation
- Submit a pull request
- Remote cache server implementation
- Remote cache client integration
- Web dashboard for analytics
- CI/CD integration guides
- Additional storage backends
- Performance optimizations
- Better error messages
- Shell completion scripts
- Plugin system
- Custom hash algorithms
- Advanced cache strategies
Open an issue or start a discussion on GitHub.
By contributing, you agree that your contributions will be licensed under the MIT License.