Skip to content

A modular framework for building EVM consensus clients ⛵️✨

License

Notifications You must be signed in to change notification settings

Particle-Network/beacon-kit

Repository files navigation

beacon-kit

CI status CodeCov

A modular and customizable consensus layer for Ethereum based blockchains

What is BeaconKit?

BeaconKit introduces an innovative framework that utilizes the Cosmos-SDK to create a flexible, customizable consensus layer tailored for Ethereum-based blockchains. 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.

First there was EVM Compatibility; next, EVM Equivalence; and now with BeaconKit, EVM Identicality.

Why BeaconKit?

TODO: Talk about Polaris / Ethermint compatibility issue.

Supported Execution Clients

Through utilizing the Ethereum Engine API BeaconKit is able to support all 5 major Ethereum execution clients:

  • Geth: Official Go implementation of the Ethereum protocol.
  • Erigon: Formerly known as Turbo-Geth, it is a more performant and feature-rich Ethereum client forked from go-ethereum.
  • Nethermind: .NET based Ethereum client with full support for Ethereum and other blockchain protocols.
  • Besu: An enterprise-grade Ethereum client developed under the Apache 2.0 license and written in Java.
  • Reth: A Rust-based Ethereum client, focusing on performance and reliability.

Documentation

BeaconKit leverages pkgsite for it's core documentation, you can run pkgsite locally and run a web-ui of the latest documentation:

make pkgsite 

Running a Local Development Network

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

The account with private-key=0xfffdbb37105441e14b0ee6330d855d8504ff39e705c3afa8f859ac9865f99306 corresponding with address=0x20f33ce90a13a4b5e7697e3544c3083b8f8a51d4 is preloaded with the native EVM token.

About

A modular framework for building EVM consensus clients ⛵️✨

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 90.6%
  • Starlark 5.3%
  • Solidity 1.9%
  • Makefile 1.3%
  • Shell 0.4%
  • Dockerfile 0.3%
  • Smarty 0.2%