Contributing Guidelines¶
Thank you for your interest in contributing to Ethereum on ARM! This guide will help you get started.
Tip
We welcome contributions of all kinds—code, documentation, bug reports, and feature requests.
Quick Links¶
Create custom ARM images for Ethereum nodes.
Reference materials and upstream project links.
View the source code on GitHub.
Getting Started¶
1. Fork the Repository¶
git clone https://github.com/EOA-Blockchain-Labs/ethereumonarm.git
cd ethereumonarm
2. Set Up Development Environment¶
For package building, see the Building Images guide.
For documentation changes:
cd docs
docker compose up # Live preview at http://localhost:8000
3. Make Your Changes¶
Create a feature branch:
git checkout -b feature/my-changeFollow existing code style and conventions
Test your changes locally
4. Submit a Pull Request¶
Push your branch:
git push origin feature/my-changeOpen a PR against the
mainbranchDescribe your changes clearly
Contribution Areas¶
📦 Package Development
Add or update Ethereum client packages in fpm-package-builder/:
L1 Clients:
l1-clients/(Geth, Nethermind, Lighthouse, etc.)L2 Clients:
l2-clients/(Arbitrum, Optimism, Starknet)Infrastructure:
infra/(Monitoring, DVT, MEV tools)
Each package includes:
Makefile- Build automationsources/- Configuration filesextras/- Systemd service units
📝 Documentation
Improve docs in the docs/ directory:
Fix typos, clarify instructions
Add new guides for supported software
Update hardware compatibility info
Translate documentation
Build locally:
cd docs && docker compose up
🐛 Bug Reports
Found a bug? Open an issue on GitHub with:
Device model and RAM
Ethereum on ARM version
Steps to reproduce
Error messages or logs
💡 Feature Requests
Have an idea? We’d love to hear it!
New client support
Hardware compatibility
Tooling improvements
Code Style¶
Area |
Guidelines |
||
|---|---|---|---|
Shell Scripts |
Use |
||
Makefiles |
Use tabs for indentation; document targets with |
||
RST Docs |
80-char lines; use semantic sections; include code examples |
||
Commits |
Conventional commits ( |
|
|
Community¶
Join our community for support and discussion.
Follow for updates and announcements.
Contact the maintainers directly.
Official project website.
License¶
By contributing, you agree that your contributions will be licensed under the project’s existing license (GNU GPL v3.0).
See also
Building Images - Detailed development guide
Sources - Upstream project references