Thank you for your interest in contributing to Wind Network! This document provides guidelines and information for contributors.
- Rust 1.70+ with cargo
- Git
- Basic knowledge of Solana development (helpful but not required)
-
Fork the repository
-
Clone your fork:
git clone https://github.com/YOUR_USERNAME/REPOSITORY_NAME.git cd REPOSITORY_NAME -
Install dependencies:
cargo build
-
Run tests:
cargo test
- Follow Rust standard formatting:
cargo fmt - Pass all lints:
cargo clippy -- -D warnings - Use meaningful variable and function names
- Add documentation for public APIs
- Write comprehensive tests
Use conventional commit format:
type(scope): description
[optional body]
[optional footer]
Types: feat, fix, docs, style, refactor, test, chore
Examples:
feat(sni): add real-time account monitoringfix(tide): resolve memory leak in SIMD processordocs(api): update GraphQL schema documentation
feature/description- New featuresfix/description- Bug fixesdocs/description- Documentation changesrefactor/description- Code refactoring
- Create a feature branch from
main - Make your changes following the guidelines above
- Add or update tests as necessary
- Update documentation if needed
- Ensure all CI checks pass
- Submit a pull request with a clear description
- All tests pass
- Code is properly formatted
- No clippy warnings
- Documentation updated
- Changelog updated (for significant changes)
# Run all tests
cargo test
# Run specific test
cargo test test_name
# Run with output
cargo test -- --nocapture
# Run integration tests
cargo test --test integration- Write tests for all new functionality
- Use descriptive test names
- Test both success and failure cases
- Mock external dependencies
- Use property-based testing where appropriate
- Update README.md for user-facing changes
- Add inline documentation for public APIs
- Update examples if APIs change
- Keep changelog up to date
Use the bug report template and include:
- Clear description of the issue
- Steps to reproduce
- Expected vs actual behavior
- Environment information
- Relevant logs or error messages
Use the feature request template and include:
- Clear description of the feature
- Use cases and motivation
- Proposed implementation approach
- Alternatives considered
This project follows the Contributor Covenant Code of Conduct. By participating, you agree to uphold this code.
- Open an issue for bugs or feature requests
- Join our discussions for questions
- Email: team@windnetwork.ai
Contributors will be recognized in:
- CONTRIBUTORS.md file
- Release notes for significant contributions
- Project documentation
Thank you for contributing to Wind Network! 🌊