ev-reth Overview
ev-reth is a modified reth Ethereum execution client optimized for Evolve rollups.
What is ev-reth?
ev-reth extends reth with:
- Engine API integration — Driven by ev-node for block production
- Rollup-specific features — Base fee redirect, deploy allowlist, custom precompiles
- Application gas sponsorship — Custom transaction type for sponsored batch operations
- Configurable chain parameters — Contract size limits, custom gas settings
Architecture
text
┌─────────────────────────────────────────┐
│ ev-node │
│ (consensus + DA + P2P) │
└─────────────────┬───────────────────────┘
│ Engine API
│ (JWT authenticated)
┌─────────────────▼───────────────────────┐
│ ev-reth │
│ (EVM execution) │
│ ┌───────────┐ ┌───────────────────┐ │
│ │ State DB │ │ Transaction Pool │ │
│ └───────────┘ └───────────────────┘ │
│ ┌───────────────────────────────────┐ │
│ │ EVM + Precompiles │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘ev-node drives ev-reth through the Engine API:
- ev-node calls
engine_forkchoiceUpdatedwith payload attributes - ev-reth builds a block from pending transactions
- ev-node calls
engine_getPayloadto retrieve the block - ev-node broadcasts and submits to DA
- ev-node calls
engine_newPayloadto finalize
Features
| Feature | Description |
|---|---|
| Base Fee Redirect | Send base fees to treasury instead of burning |
| Deploy Allowlist | Restrict who can deploy contracts |
| Contract Size Limits | Increase max contract size beyond 24KB |
| Mint Precompile | Native token minting for bridges |
| Sponsored Batch Transactions | Sponsor user gas and execute multiple calls atomically |
When to Use ev-reth
Use ev-reth when you want:
- Full EVM compatibility
- Ethereum tooling (Foundry, Hardhat, etc.)
- Standard wallet support (MetaMask, etc.)
- High-performance Rust execution
Repository
- GitHub: github.com/evstack/ev-reth
- Based on: paradigmxyz/reth
Next Steps
- EVM Quickstart — Get started
- Configuration — Chainspec and settings
- Engine API — How ev-node communicates with ev-reth
- JavaScript Client — Build and sponsor type
0x76transactions