Essential Rust Crates
Several Rust crates are available on crates.io to support smart contract development with Rust. A crate is a compilation unit that can be compiled into a binary or a library. The corresponding documentation is published on docs.rs. The most important crates are listed below.
casper-types
Types shared by many Casper crates:
casper-contract
A library for developing Casper smart contracts:
casper-engine-test-support
The Casper test support library:
casper-node
The component for running a node on a Casper network:
casper-client
A client library for interacting with a Casper network:
casper-event-standard
A Rust library that provides a simple and standardized way for Casper contracts to emit events:
casper-hashing
A library providing hashing functionality including Merkle Proof utilities:
casper-wasm-utils
Command-line utilities and corresponding Rust API for producing pwasm-compatible executables:
cargo-casper
A command line tool for creating a Wasm smart contract and tests:
Other Libraries
The Open-Source Software page provides other community-curated tools and libraries.