Skip to content
Java implementation of Ethereum 2.0 Beacon Chain
Java
Branch: develop
Clone or download
Latest commit aa452ce Sep 7, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci circleci verifying cache usage Aug 24, 2019
chain
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
ssz
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
README.md
build.gradle validator/server: refactor version controller + detach ValidatorServer Jul 31, 2019
gradle.properties 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

README.md

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.

Develop

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>

Simulator

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.

Links

Ethereum 2.0 specs
Vitalik Buterin on DevCon4 about Ethereum 2.0

Licensing

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

Donations

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

0xF5eFA576ee17A381d798299d10eD397c4dce9BdD

You can’t perform that action at this time.