Thank you for your interest in contributing to DeCube! This document provides guidelines and information for contributors.
This project follows a code of conduct to ensure a welcoming environment for all contributors. By participating, you agree to:
- Be respectful and inclusive
- Focus on constructive feedback
- Accept responsibility for mistakes
- Show empathy towards other contributors
- Help create a positive community
git clone https://github.com/your-username/DeCub.git
cd DeCub
git remote add upstream https://github.com/REChain-Network-Solutions/DeCub.gitFollow the setup guide to get your development environment running.
git checkout -b feature/your-feature-name
# or
git checkout -b fix/issue-number-description- Write clear, concise commit messages
- Follow the existing code style
- Add tests for new functionality
- Update documentation as needed
- Ensure all tests pass
# Run unit tests
make test-unit
# Run integration tests
make test-integration
# Test manually
docker-compose up -d
# ... test your changesgit push origin feature/your-feature-nameThen create a PR on GitHub with:
- Clear title and description
- Reference any related issues
- Screenshots/videos for UI changes
- Test results
- Go: Follow standard Go formatting (
go fmt) - Rust: Use
rustfmtandclippy - Documentation: Use Markdown for docs, Go doc comments for code
- Commits: Use conventional commits format
- Unit tests for all new code
- Integration tests for component interactions
- Chaos tests for resilience
- Performance benchmarks where applicable
- Update READMEs for component changes
- Add API documentation for new endpoints
- Include setup instructions for new features
- Update architecture diagrams if needed
- Enhance gossip synchronization (see TODO.md)
- Improve consensus mechanisms
- Add comprehensive monitoring
- Performance optimizations
- Additional CRDT implementations
- More storage backends
- CLI tool enhancements
- Documentation improvements
- Alternative language implementations
- UI/dashboard development
- Mobile client development
- Research integrations
Please include:
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, versions)
- Logs and error messages
- Screenshots if applicable
Please include:
- Use case description
- Proposed implementation
- Benefits and impact
- Alternative solutions considered
- Automated Checks: CI/CD runs tests and linting
- Code Review: At least one maintainer review required
- Testing: Additional testing may be requested
- Approval: Maintainers approve and merge
- Documentation: Check docs/ directory and READMEs
- Issues: Search existing issues before creating new ones
- Discussions: Use GitHub Discussions for questions
- Community: Join our community channels
Contributors are recognized through:
- GitHub contributor statistics
- Mention in release notes
- Community acknowledgments
- Potential co-authorship on publications
Thank you for contributing to DeCube and helping build the future of decentralized computing!