Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/berachain/beacon-kit
A modular framework for building EVM consensus clients ⛵️✨
https://github.com/berachain/beacon-kit
besu bet cometbft cosmos erigon ethereum ethereumjs evm foundry geth golang l1 l2 nethermind reth rust solidity tendermint
Last synced: about 19 hours ago
JSON representation
A modular framework for building EVM consensus clients ⛵️✨
- Host: GitHub
- URL: https://github.com/berachain/beacon-kit
- Owner: berachain
- License: other
- Created: 2024-02-02T19:52:58.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-01T17:55:13.000Z (6 days ago)
- Last Synced: 2025-02-01T18:37:42.654Z (6 days ago)
- Topics: besu, bet, cometbft, cosmos, erigon, ethereum, ethereumjs, evm, foundry, geth, golang, l1, l2, nethermind, reth, rust, solidity, tendermint
- Language: Go
- Homepage: https://berachain.com
- Size: 100 MB
- Stars: 229
- Watchers: 35
- Forks: 191
- Open Issues: 168
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
A modular framework for building EVM consensus clients ⛵️✨[![CI status](https://github.com/berachain/beacon-kit/workflows/pipeline/badge.svg)](https://github.com/berachain/beacon-kit/actions/workflows/pipeline.yml)
[![CodeCov](https://codecov.io/gh/berachain/beacon-kit/graph/badge.svg?token=0l5iJ3ZbzV)](https://codecov.io/gh/berachain/beacon-kit)
[![Telegram Chat](https://img.shields.io/endpoint?color=neon&logo=telegram&label=chat&url=https%3A%2F%2Ftg.sumanjay.workers.dev%2Fbeacon_kit)](https://t.me/beacon_kit)
[![X Follow](https://img.shields.io/twitter/follow/berachain)](https://x.com/berachain)
[![Discord](https://img.shields.io/discord/924442927399313448?label=discord)](https://discord.gg/berachain)## What is BeaconKit?
[BeaconKit](https://docs.berachain.com/learn/what-is-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.## Supported Execution Clients
Through utilizing the [Ethereum Engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine)
BeaconKit is able to support all 6 major Ethereum execution clients:- [**Geth**](https://geth.ethereum.org/): Official Go implementation of the Ethereum protocol.
- [**Erigon**](https://erigon.tech/): More performant, feature-rich client forked from `go-ethereum`.
- [**Nethermind**](https://www.nethermind.io/): .NET based client with full support for Ethereum protocols.
- [**Besu**](https://www.lfdecentralizedtrust.org/projects/besu): Enterprise-grade client, Apache 2.0 licensed, written in Java.
- [**Reth**](https://reth.rs/): Rust-based client focusing on performance and reliability.
- [**Ethereumjs**](https://ethereumjs.readthedocs.io/en/latest/#): Javascript based client managed by the Ethereum Foundation.## Running a Local Development Network
**Prerequisites:**
- [Docker](https://docs.docker.com/engine/install/)
- [Golang 1.23.0+](https://go.dev/doc/install)
- [Foundry](https://book.getfoundry.sh/)Start by opening two terminals side-by-side:
**Terminal 1:**
```bash
# Start the sample BeaconKit Consensus Client:
make start
```**Terminal 2:**
**Note:** This must be run *after* the `beacond` node is started since `make start` will populate the
eth-genesis file used by the Execution Client.```bash
# 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.## Multinode Local Devnet
Please refer to the [Kurtosis README](https://github.com/berachain/beacon-kit/blob/main/kurtosis/README.md) for more information on how to run a multinode local devnet.