Skip to content

Latest commit

 

History

History

core

Java Node Core

The Java Node Core is Radix's core consensus and networking module for the Radix Distributed Ledger. It includes a variant implementation of the HotStuff BFT-style consensus.

Table of contents

Building

Clone the required repository:

git clone https://github.com/radixdlt/radixdlt.git

Checkout the required branch:

cd radixdlt && git checkout release/1.0-beta.34

RADIXDLT_ENABLE_FAUCET=True Run tests (note that integration tests take several minutes to run):

./gradlew test runAllIntegrationTests

Unfortunately the integration tests currently use hardcoded TCP/UDP port numbers 12345 and 23456, and may fail if these ports are not available on your machine. We plan to fix this.

Launching

You will need docker and docker-compose installed to launch a node. Version 20.10.10 or newer is required. We use Docker Desktop for Mac.

We generate initial validator keys and genesis at launch time, so the easiest way to launch a set of nodes is to use the startup script provided.

./docker/scripts/rundocker.sh 2

The number indicates the count of nodes to include in the configuration. Configuration files are provided for node counts between 1 and 5 inclusive. Note that each node requires approximately 1GiB of RAM.

If you need to run docker-compose using sudo, this can be specified on the command line as well:

DOCKER_COMPOSE_LAUNCH="sudo -E docker-compose" ./docker/scripts/rundocker.sh 2

Note that the -E flag is required here, as startup information such as keys and genesis configuration generated by the script is provided in environment variables.

Contribute

Contributions are welcome, we simply ask to:

  • Fork the codebase
  • Make changes
  • Submit a pull request for review

When contributing to this repository, we recommend discussing with the development team the change you wish to make using a GitHub issue before making changes.

Please follow our Code of Conduct in all your interactions with the project.

Links

Link Description
radixdlt.com Radix DLT Homepage
documentation Radix Knowledge Base
forum Radix Technical Forum
@radixdlt Follow Radix DLT on Twitter

License

The radixdlt-core code is released under the Radix License.