Teku is a Java implementation of the Ethereum 2.0 Beacon Chain. Teku is changing rapidly hence we recommend building from the latest master. See the Changelog for known issues and breaking changes.
- Ethereum 2.0 Beacon Chain specification
- Teku user documentation
- Teku REST API reference documentation
- Teku issues
- Contribution guidelines
- Teku Changelog
See our user documentation.
Raise a documentation issue or get in touch in the #teku channel on Discord if you've got questions or feedback.
- Java 11
To create a ready to run distribution:
git clone https://github.com/PegaSysEng/teku.git
cd teku && ./gradlew distTar installDist
This produces:
- Fully packaged distribution in
build/distributions
- Expanded distribution, ready to run in
build/install/teku
To build, clone this repo and run with gradle
:
git clone https://github.com/PegaSysEng/teku.git
cd teku && ./gradlew
Or clone it manually:
git clone https://github.com/PegaSysEng/teku.git
cd teku && ./gradlew
After a successful build, distribution packages are available in build/distributions
.
Target | Builds |
---|---|
distTar | Full distribution in build/distributions (as .tar.gz ) |
distZip | Full distribution in build/distributions (as .zip ) |
installDist | Expanded distribution in build/install/teku |
distDocker | The pegasyseng/teku docker image |
We use Google's Java coding conventions for the project. To reformat code, run:
./gradlew spotlessApply
Code style is checked automatically during a build.
All the unit tests are run as part of the build, but can be explicitly triggered with:
./gradlew test
YourKit for providing us with a free profiler open source license.
YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, and YourKit YouMonitor.