The project is still heavily under construction, see the disclaimer below.
BeaconKit is a modular framework for building EVM based consensus clients. The framework offers the most user-friendly way to build and operate an EVM blockchain, while ensuring a functionally identical execution environment to that of the Ethereum Mainnet.
Through utilizing the Ethereum Engine API BeaconKit is able to support all 6 major Ethereum execution clients:
- Geth: Official Go implementation of the Ethereum protocol.
- Erigon: More performant, feature-rich client forked from
go-ethereum
. - Nethermind: .NET based client with full support for Ethereum protocols.
- Besu: Enterprise-grade client, Apache 2.0 licensed, written in Java.
- Reth: Rust-based client focusing on performance and reliability.
- Ethereumjs: Javascript based client managed by the Ethereum Foundation.
Prerequisites:
Start by opening two terminals side-by-side:
Terminal 1:
# Start the sample BeaconKit Consensus Client:
make start
Terminal 2:
# Start an Ethereum Execution Client:
make start-reth # or start-geth start-besu start-erigon start-nethermind start-ethereumjs
The account with
private-key=0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306
corresponding with address=0x20f33ce90a13a4b5e7697e3544c3083b8f8a51d4
is
preloaded with the native EVM token.
Please refer to the Kurtosis README for more information on how to run a multinode local devnet.
This project is work in progress and subject to frequent changes as we are still working on wiring up the final system. Audits on BeaconKit are still ongoing, and in progress at the moment. We don't recommend using BeaconKit in a production environment yet.