Thank you for your interest in contributing to the Nim Blockchain Node project! Your contributions will help enhance the blockchain node's security, scalability, and overall functionality. Below you'll find guidelines on how to effectively participate.
- Clearly describe the issue, including steps to reproduce, expected vs. actual behavior, and relevant screenshots or logs.
- Label issues appropriately (bug, feature request, enhancement, etc.).
- Fork the repository and create your feature branch:
git checkout -b feature/new-feature-name
- Ensure your code adheres to existing architecture, clearly documented practices, and coding standards.
- Commit your changes clearly and explicitly:
git commit -m "Implement new consensus algorithm"
- Push your feature branch:
git push origin feature/new-feature-name
- Submit a pull request against the main branch and clearly outline your changes.
- Follow SOLID principles for clear modularity and maintainability.
- Adhere to DRY and KISS principles to ensure clarity and simplicity.
- Write clear and concise documentation and comments to facilitate peer review.
- All new features or bug fixes must include relevant tests.
- Run the full test suite before submitting a pull request:
nimble test
- Report security vulnerabilities responsibly by directly contacting maintainers.
- Follow cryptographic best practices and avoid custom cryptographic implementations without thorough review.
- Update documentation in the
docs
folder with your contribution to reflect changes accurately. - Use clear, technical English, focusing on clarity, completeness, and readability.
- Be respectful, collaborative, and inclusive.
- Provide constructive feedback and be open to receiving feedback from others.
We look forward to your valuable contributions to enhancing the Nim Blockchain Node!