EigenDA is a secure, high-throughput, and decentralized data availability (DA) service built on top of Ethereum using the EigenLayer restaking primitives.
To understand more about how EigenDA works and how it transforms the modern landscape of data availability, continue reading EigenDA introduction.
To dive deep into the technical details, continue reading EigenDA protocol spec in mdBook.
If you're interested in integrating your rollup with EigenDA, follow the rollup guides here
The EigenDA public API is documented here.
If you want to be an EigenDA operator and run a node, please clone Operator Setup Guide GitHub repo and follow the instructions there.
./rust- Sovereign SDK EigenDA adapter: A data availability adapter implementation for Sovereign SDK rollups that enables them to use EigenDA as their data availability layer.
We welcome all contributions! There are many ways to contribute to the project, including but not limited to:
- Opening a PR
- Submitting feature requests or bugs
- Improving our product or contribution documentation
- Voting on open issues or contributing use cases to a feature request
We use mise to manage dependencies in EigenDA. This is still a work in progress, as it currently only manages go and golangci-lint dependencies. The goal is to eventually get exact parity and reproducibility between our CI and local environments, so that we can reproduce and debug failing CI issues locally.
To set up your development environment, first install and activate mise, then run:
mise install # Install all development tools
mise run install-hooks # Install git pre-commit hooksWe provide pre-commit hooks to automatically check your code before committing. These hooks run linting and formatting checks to catch issues early.
The hooks are installed automatically when you run mise run install-hooks (see Dependency Management above).
The pre-commit hook will run the following checks:
- Linting: Runs
golangci-lintto check code quality - Go mod tidy check: Ensures
go.modandgo.sumare up to date - Format checking: Verifies Go and Solidity code formatting
If any checks fail, the commit will be blocked. You can:
- Fix the issues by running
make fmtto auto-format code andgo mod tidyif needed - Bypass the hooks (not recommended) using
git commit --no-verify
Note: You can also manually install/update hooks by running ./scripts/install-hooks.sh