Java Implementation of the Ethereum 2.0 Beacon Chain
Branch: master
Clone or download
schroedingerscode Implement penalize_validator helper methods for block processing. (#348)
* Remove confusing usage of VisibleForTesting annotation on public method.

* Update slashed_epoch to penalized_epoch in Validator to be compliance with the spec.

* Implement BeaconStateUtil.penalize_validator helper method.
Latest commit b964d36 Feb 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update PR Template (#185) Jan 11, 2019
artemis modified dir strucutre in ethereum folder (#225) Jan 31, 2019
docs checking in a very basic overview of the planned architecture. resolves Dec 20, 2018
errorprone-checks Move to JUnit5 (#211) Jan 24, 2019
ethereum Implement penalize_validator helper methods for block processing. (#348) Feb 19, 2019
gradle Implement SSZ and test round-trip for blocks and operations datastruc… Feb 9, 2019
networking Implement SSZ and test round-trip for blocks and operations datastruc… Feb 9, 2019
pow Init state (#277) Feb 9, 2019
services Init state (#277) Feb 9, 2019
storage Chain Storage Integration (#269) Feb 8, 2019
util Move the Signature type closer to the BLS routines (#317) Feb 14, 2019
.gitattributes Skeleton of Pantheon project necessary to build BeaconChain. (#8) Sep 25, 2018
.gitignore removed EventBusFactory, consolidated service classes, ServiceInterfa… Dec 23, 2018
CLA.md initial commit for artemis. resolves #88 Dec 20, 2018
CODE-OF-CONDUCT.md adding all the required docs to the repo in order to open source Arte… Dec 13, 2018
CONTRIBUTING.md Fix link to coding conventions (#219) Jan 28, 2019
Dockerfile Add Unicode/UTF-8 support in Jenkinsfile. (#191) Jan 12, 2019
GOVERNANCE.md adding all the required docs to the repo in order to open source Arte… Dec 13, 2018
Jenkinsfile Use JDK11 for CI (#245) Feb 5, 2019
LICENSE initial commit for artemis. resolves #88 Dec 20, 2018
README.md Update README.md (#135) Dec 24, 2018
build.gradle modified dir strucutre in ethereum folder (#225) Jan 31, 2019
gradle.properties Set up scaffolding for ChainStorageService (#195) Jan 14, 2019
gradlew Gradle 5.1 Upgrade (#159) Jan 5, 2019
gradlew.bat Gradle 5.1 Upgrade (#159) Jan 5, 2019
settings.gradle Service adapter implementation (#267) Feb 8, 2019

README.md

artemis

Build Status License Gitter chat

Implementation of the Ethereum 2.0 Beacon Chain.

Based on the (evolving) specification.

NOTE: This repo is still in early development.

Build Instructions

To build, clone this repo and run with gradle like so:

git clone --recursive https://github.com/PegaSysEng/artemis.git
cd artemis
./gradlew

After a successful build, distribution packages will be available in build/distributions.

Code Style

We use Google's Java coding conventions for the project. To reformat code, run:

./gradlew spotlessApply

Code style will be checked automatically during a build.

Testing

All the unit tests are run as part of the build, but can be explicitly triggered with:

./gradlew test

The integration tests can be triggered with:

./gradlew integrationTest

Run Options

To view the run menu:

$ ./gradlew run --args='-h'

Usage: Artemis [-hpV]
  -h, --help                       Show this help message and exit.
  -p, --PoWChainServiceDisabled    If this option is enabled then the PoW Chain service is disabled.
  -V, --version                    Print version information and exit.

You can run the executable from the CLI with this command:

./gradlew run

To run without a PoW Chain:

$ ./gradlew run --args='-p'