Main binary crate for the Rust node runtime and thin client commands.
- Parse CLI arguments and configuration
- Start protocol, gRPC, HTTP, and admin servers
- Wire together
casper,comm,rholang,rspace++,block-storage, andmodels - Provide thin-client commands such as deploy, propose, status, and block inspection
- Publish metrics and diagnostics
From the repository root:
cargo build -p node
cargo build --release -p nodecargo test -p node
cargo test -p node --releaseShow help:
cargo run -p node -- --helpRun a standalone node:
cargo run --release -p node -- run -s \
--config-file=run-local/conf/standalone.conf \
--validator-private-key=5f668a7ee96d944a4494cc947e4005e172d7ab3461ee5538f1f2a45a835e9657 \
--host=localhost \
--no-upnpThin-client examples:
cargo run -p node -- status
cargo run -p node -- propose --private-key <validator-private-key>
cargo run -p node -- last-finalized-block
cargo run -p node -- show-blocks 20
cargo run -p node -- repl| Path | Purpose |
|---|---|
src/main.rs |
Binary entry point |
src/rust/configuration/ |
CLI parsing and config loading |
src/rust/runtime/ |
Runtime setup and server orchestration |
src/rust/api/ |
gRPC services and client-facing handlers |
src/rust/web/ |
HTTP routes, status, transactions, docs |
src/rust/diagnostics/ |
Metrics and reporters |
src/main/resources/ |
Runtime configuration resources |
build.rs generates Rust bindings for:
src/main/protobuf/repl.protosrc/main/protobuf/lsp.proto- selected API schemas imported from
../models/src/main/protobuf
The container image for this crate is built from node/Dockerfile. Helper commands for local and publish workflows are in node/docker-commands.sh.