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.
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.
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.
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.
Link | Description |
---|---|
radixdlt.com | Radix DLT Homepage |
documentation | Radix Knowledge Base |
forum | Radix Technical Forum |
@radixdlt | Follow Radix DLT on Twitter |
The radixdlt-core
code is released under the Radix License.