Nimiq Core implementation in Rust (core-rs)
Rust implementation of the Nimiq Blockchain Core
Nimiq is a frictionless payment protocol for the web.
Table of Contents
- Nimiq White Paper: High-level introduction of the Nimiq payment protocol.
- Nimiq Developer Reference: Details of the protocol architecture.
- Testnet: Demo of the Nimiq ecosystem in a test version of the network.
Besides Rust itself, the following packages are required to be able to compile this source code:
libssl-dev(in Debian/Ubuntu) or
openssl-dev(in Fedora/Red Hat)
To download from crates.io, compile and install the client:
cargo +nightly install nimiq-client
The binary will be installed in your Cargo directory, which is usually at
$HOME/.cargo/bin, and should be available in your
Compiling the project is achieved through
git clone https://github.com/nimiq/core-rs cd core-rs cargo +nightly build
Note that this will build it in debug mode, which is not as performant. To get the most speed out of the client, build it in release mode:
cargo +nightly build --release
If you want to install the client onto your system (into
cargo +nightly install --path client/
Alternatively you can install directly from git:
cargo +nightly install --git https://github.com/nimiq/core-rs.git
After installing the client you can use it as if you had downloaded it from crates.io.
By default the client will look for a configuration file in
$HOME/.nimiq/client.config. You need to create this file yourself:
nimiq-client # Run the client. This will create the example config file. cp $HOME/.nimiq/client.example.toml $HOME/.nimiq/client.toml # Create your config from the example. nano $HOME/.nimiq/client.toml # Edit the config. Explanations are included in the file.
You can also specify your own configuration file:
nimiq-client -c path/to/client.toml
Take a look at
client/client.example.toml for all the configuration options.
If you installed the client from crates.io, you can just run it with:
To run the Nimiq Rust Client from the downloaded sources:
cd core-rs/client cargo run
Dependencies and binaries will be downloaded and compiled automatically by Cargo.
If you want to use the release build:
cd core-rs/client cargo run --release
Small note: If editing the README, please conform to the standard-readme specification.
This project is under the Apache License 2.0.