Thank you for your interest in contributing to ethrex! Please read the following guidelines to help us review and accept your contributions smoothly.
- Fork the repository and create your branch from
main. - Make your changes, following the code style guidelines below.
- Run tests locally to ensure nothing is broken.
- Open a pull request with a descriptive title (see PR naming rules below).
- Fill in the PR template if available, and link related issues.
All PR titles must follow the enforced semantic format:
<type>(<scope>[,<scope2>,...]): <subject>
- Allowed types:
feat,fix,perf,refactor,revert,deps,build,ci,test,style,chore,docs - Allowed scopes:
l1,l2,levm(multiple scopes can be used, separated by commas) - Scope(s) are required
- Subject must not start with an uppercase character
Examples:
fix(l1,levm): handle edge case in snap syncdocs(l2): update documentation for L2
An exclamation mark may be added before the colon to indicate breaking changes, for example perf(l1)!: change database schema
PRs not following this convention will fail automated checks.
All commits must have a verified signature.
- Sign your commits using GPG or SSH so that GitHub marks them as 'Verified'.
- Unsigned or unverified commits may be rejected during review.
- For instructions, see GitHub: Signing commits.
- Use GitHub Issues to report bugs or request features.
- Include steps to reproduce, expected behavior, and environment details.
- All PRs require review and approval by multiple maintainers.
- You may be asked to make changes before merging.
- Automated checks must pass before merge.
For detailed guides, architecture, and API references, see the Developer Docs.
- See
docs/CONTRIBUTING_DOCS.mdfor documentation-specific guidelines.
If you're new to ethrex, the best way to get involved is by tackling a "good first issue". These are beginner-friendly tasks that help you learn the codebase and contribute quickly.
You can find the current list here: Good First Issues on GitHub
If there are no open "good first issues" at the moment, feel free to browse other issues or reach out in the community chat for guidance on where to start.
We recommend starting with one of these issues to get familiar with the project and our workflow.
We do not accept PRs from first-time contributors that only address spelling or grammatical errors in documentation, code, or elsewhere. For your initial contribution, please focus on meaningful improvements, bug fixes, or new features.
- Ask questions in the community chat (Telegram) or open an issue.
We appreciate your help in making ethrex better!