|
1 | 1 | Contributing to Blockscout-rs
|
2 | 2 | ===
|
3 | 3 |
|
4 |
| -// todo |
| 4 | +First off, thanks for taking the time to contribute to 🚀 Blockscout-Rust 🚀 projects! 🎉 |
| 5 | + |
| 6 | +## How Can I Contribute? |
| 7 | + |
| 8 | +The following is a set of guidelines for contributing to `blockscout-rs`, which is hosted in the Blockscout organization. |
| 9 | + |
| 10 | +### Reporting Bugs |
| 11 | + |
| 12 | +This section guides you through submitting a bug report. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports. |
| 13 | + |
| 14 | +#### Before Submitting a Bug Report |
| 15 | + |
| 16 | +* Check the issues list to see if the problem has already been reported. |
| 17 | +* Update to the latest version and see if the issue persists. |
| 18 | + |
| 19 | + |
| 20 | +#### How Do I Submit a ✨Good✨ Bug Report? |
| 21 | + |
| 22 | +Bugs are tracked as GitHub issues. Create an issue and provide the following information by filling in the provided template: |
| 23 | + |
| 24 | +* Use a clear and descriptive title for the issue to identify the problem. |
| 25 | +* Describe the exact steps which reproduce the problem in as many details as possible. |
| 26 | +* Describe the behavior you observed after following the steps and explain why it is problematic. |
| 27 | +* Explain which behavior you expected to see instead and why. |
| 28 | +* Include screenshots, logs, ENVs, or any other information that might help in understanding the problem. |
| 29 | +* Mark the issue with the appropriate label (bug, enhancement, documentation, question, etc). |
| 30 | + |
| 31 | +### Contributing Code |
| 32 | + |
| 33 | +If you want to help us improve the project, you can contribute code. To do so, follow these steps: |
| 34 | + |
| 35 | +* Fork (https://github.com/blockscout/blockscout-rs/fork) the repository and make changes on your fork in a feature branch. |
| 36 | +* Create your branch with the name `<name>/<short-slug-of-your-feature-or-fix>` |
| 37 | +* Write code to implement features or fix bugs. Make sure your code is well-tested |
| 38 | +* Commit your changes. Commit messages **SHOULD** follow our [commit message conventions](#commit-messages-guidelines) format. |
| 39 | +* Create a pull request. The title of the pull request **MUST** follow the [commit message conventions](#commit-messages-guidelines) format. |
| 40 | + |
| 41 | + |
| 42 | +### Commit Messages Guidelines |
| 43 | + |
| 44 | +1. Use Conventional Commits: |
| 45 | + * Follow [Conventional Commits v1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). |
| 46 | + |
| 47 | +2. **Commit Types:** |
| 48 | + > **Note:** those types are preferred, but you can use any other type if it fits better. |
| 49 | +
|
| 50 | + * `feat`: New feature |
| 51 | + * `fix`: Bug fix |
| 52 | + * `perf`: Performance improvement |
| 53 | + * `chore`: Maintenance tasks (including code changes that do not fit other types) |
| 54 | + * `refactor`: Code restructuring |
| 55 | + * `ci`: Continuous Integration changes |
| 56 | + * `docs`: Documentation updates |
| 57 | + * `build`: Build system changes |
| 58 | + * `config`: Configuration changes |
| 59 | + * `test`: Adding or updating tests |
| 60 | + * `revert`: Reverting commit changes |
| 61 | + |
| 62 | +3. Message Format `type(scope): description` |
| 63 | + * **Type:** Lowercase (e.g., `feat`, `fix`) |
| 64 | + * **Scope:** Service name (optional) |
| 65 | + * **Description:** Short and concise (imperative mood) |
| 66 | + |
| 67 | +4. **Examples:** |
| 68 | + * `feat: add new feature ...` |
| 69 | + * `fix: correct bug ...` |
| 70 | + * `docs: update README` |
| 71 | + * `ci: add new workflow` |
| 72 | + |
| 73 | +5. Pull Request Titles |
| 74 | + |
| 75 | + * **SHOULD** include service name (in `lower-kebab-case`) or other scope of change after `<type>` |
| 76 | + * Examples: |
| 77 | + * `feat(stats): add resolution for newAccounts chart` |
| 78 | + * `fix(stats): correct wrong update bug` |
| 79 | + * `docs: add CONTRIBUTING.md` |
| 80 | + * `ci(verifier): update docker build step` |
| 81 | + |
0 commit comments