Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
🌒 Rusk
Entrypoint for the blockchain node
Overview
Rusk is the main binary and orchestration layer for the Dusk blockchain. It wires together the chain node, consensus engine, contract VM, and exposes HTTP/GraphQL APIs for wallets and applications to interact with the network.
Node Modes
| Mode | Flag | Description |
|---|---|---|
| Provisioner | (default) | Full consensus participation — proposes and validates blocks |
| Archive | --features archive |
Historical data indexing via SQLite for explorers and analytics |
| Prover | --features prover |
Local ZK proving service for Phoenix transactions |
Key Modules
| Module | Description |
|---|---|
http |
GraphQL server for blockchain queries and transaction submission |
node |
Integration point for chain + consensus + networking |
verifier |
Proof verification (PLONK, Groth16) for incoming transactions |
Related Crates
dusk-vm— contract execution enginedusk-core— transaction and cryptographic typesnode— chain node (networking, storage, mempool)dusk-consensus— block ordering and finalityrusk-profile— circuit artifact managementrusk-prover— local ZK prover (optional)rusk-recovery— state and key bootstrappingnode-data— ledger and message types
Configure example's data
When running prepare-dev in the root repository, the Genesis state according to your local examples/genesis.toml will be used. Refer to examples.toml for configuration options you can set, such as stakes and balances on network initialization.
Note that the password used when running rusk is connected to the example consensus keys, which are also defined in the examples/genesis.toml.
Local startup overrides
For normal runtime startup, rusk only reads a TOML file when you pass
--config <path> or set RUSK_CONFIG_TOML. The files
rusk/default.config.toml
and
rusk/mainnet.config.toml
are templates, not auto-loaded defaults.
For reusable local overrides, keep a TOML such as .rusk/local.toml:
[]
= "127.0.0.1:9080"
Then run with:
RUSK_CONFIG_TOML=.rusk/local.toml
Join a cluster
It is possible to connect to other clusters by defining a set of bootstrapping nodes to which to connect to on initialization, by defining them in the rusk/default.config.toml , or by passing the --bootstrap argument in the node launch command.