Thanks for your interest in contributing! This project welcomes bug reports, feature requests, code contributions, documentation improvements, and suggestions.
- Code of Conduct
- How to Contribute
- Project Setup
- Style and Guidelines
- Submitting a Pull Request
- Reporting Issues
- Community
This project adheres to the Rust Code of Conduct. By participating, you agree to uphold these standards.
You can contribute in several ways:
- Report bugs and issues
- Suggest new features or enhancements
- Improve documentation
- Fix typos or improve examples
- Submit code via pull requests
Check the open issues and look for those labeled:
good first issuehelp wanteddocumentation
To get started with development:
# Clone the repo
git clone https://github.com/worldfnd/ProveKit
cd ProveKit
# Install Rust (if you haven't)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Build and test
cargo build
cargo test
# Run linter and formatter
cargo fmt
cargo clippy
# Run benchmarks
cargo bench- Follow Rust’s official style guide — use
cargo fmt. - Lint with
cargo clippyand fix warnings before submitting. - Prefer
Result<T, E>over panicking, usethiserrorto createErrortypes. - Include doc comments (
///) for all public items. - Write tests for new functionality.
- Use feature flags for optional dependencies or integrations.
⸻
- Fork the repository
- Create a new branch:
git checkout -b your-feature - Commit your changes:
git commit -m 'Add your feature' - Push to your fork:
git push origin your-feature - Open a pull request and describe your changes
We’ll review your PR and may suggest changes. Thank you for your contribution!
When filing an issue, please include:
- A clear and descriptive title
- Steps to reproduce (if applicable)
- Expected vs actual behavior
- Environment (Rust version, OS, etc.)
- Any relevant logs or screenshots
Use the appropriate issue template if available.
For questions, discussions, and general feedback, join us on:
- Slack (Requires invitation)