This library provides the core API that can be used to write smart contracts for the Concordium blockchain in the Rust programming language. It aims to provide safe wrappers around the core primitives exposed by the chain and accessible to smart contracts.
The functionality in this library is re-exported via the concordium-std and the concordium-rust-sdk crate.
-
The
concordium-std
crate is intended as the entry-point for development of smart contracts in Rust. It adds a number of helper macros and traits on top of the basic functionality available here. -
The
concordium-rust-sdk
crate is for off-chain development and interaction with smart contracts.
std
(enabled by default): Enables functionality that depends on the standard library.derive-serde
: Enable serialization and deserialization viaserde
. Enablesstd
as well.fuzz
: Enable fuzzing viaarbitrary
. Enablesderive-serde
as well.sdk
: Enable functionality only meant forconcordium-rust-sdk
. Enabling will change procedural macros to assume the context of theconcordium-rust-sdk
and enable functionality only meant for off-chain development.
The minimum supported rust version is 1.56