Skip to content
Java implementation of Ethereum 2.0 Beacon Chain
Branch: develop
Clone or download
Latest commit aa452ce Sep 7, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci circleci verifying cache usage Aug 24, 2019
consensus Merge pull request #165 from harmony-dev/spec/v0.8.2 Aug 26, 2019
core Use GMT time zone for time formatting. Sep 2, 2019
crypto crypto: fixed domain was handled is big endian Aug 20, 2019
db Describe null-removed invariant in CacheEntry.REMOVED entry Aug 27, 2019
gradle/wrapper Init beacon project Dec 18, 2018
pow Avoid unnecessary merklisation of initial deposits (#171) Aug 16, 2019
start Fix typo. Sep 6, 2019
test Added a command line option to specify yaml spec constants file (simp… Aug 29, 2019
types test: ssz_generic containers tests added Aug 23, 2019
util Add method javadoc Aug 9, 2019
validator validator/server: use object reference copy instead of synchronized Aug 5, 2019
wire Fix test failures. Sep 6, 2019
.gitignore Polish node's CLI May 27, 2019
.gitmodules Revert "ci: trying ssh url" May 22, 2019
LICENSE Add LICENSE file Feb 28, 2019
build.gradle validator/server: refactor version controller + detach ValidatorServer Jul 31, 2019 validator/server: refactor version controller + detach ValidatorServer Jul 31, 2019
gradlew Init beacon project Dec 18, 2018
gradlew.bat Init beacon project Dec 18, 2018
settings.gradle Merge pull request #162 from harmony-dev/feature/persistence Aug 14, 2019
versions.gradle Initial metrics implementation. Sep 2, 2019

Beacon Chain Java

Ethereum 2.0 Beacon chain client. Someday, definitely, it will be a fully featured Serenity client. We are working to get there. Currently there is no p2p and, hence, there is no cross client communication.

Ethereum 2.0?

Yes, Ethereum Foundation, community and other interested parties are developing successor of Ethereum without cons :). New blockchain starts from Phase 0 also known as Beacon chain, a core of Ethereum 2.0 blockchain. Phase 1 will be the next one and so on.


If you want to take part in Ethereum 2.0 development and use our code, we split everything into several modules, so anyone could easily take only the needed part. To dig into module goals, check settings.gradle.

You can build one module jar with gradle assemble task executed on desired module:

./gradlew :crypto:assemble
cp crypto/build/libs/beacon-crypto-0.2.0.jar <jar-destination>


Despite lacking a network stack there is already something that everybody can play with, a standalone Beacon chain simulator.

Use Installation guide to install simulator. For additional details check out Run simulation section.

Contribution guideline

Thank you for joining our efforts to drive Ethereum forward! We are not very strict on requirements but your code should help us to reach our goal, it should be easy to get it, understand the idea, and it should be feasible to review it. Also we are trying to match Google code style but we don't like it. Feel free to choose any issue and ask how to do it better.


Ethereum 2.0 specs
Vitalik Buterin on DevCon4 about Ethereum 2.0


This project is licensed under Apache 2.0 license. You could use it for any commercial, private or open-source project.


If you like the project, we could use your donations to fund the development:


You can’t perform that action at this time.