10 releases (5 breaking)
new 0.6.1 | Nov 21, 2024 |
---|---|
0.6.0 | Nov 8, 2024 |
0.5.0 | Aug 27, 2024 |
0.4.1 | Jul 8, 2024 |
0.1.0 | Mar 15, 2024 |
#985 in Magic Beans
211 downloads per month
Used in 2 crates
700KB
15K
SLoC
Rust Client Library
Rust library, which can be used by other project to programmatically interact with the Miden rollup.
Adding miden-client as a dependency
In order to utilize the miden-client
library, you can add the dependency to your project's Cargo.toml
file:
miden-client = { version = "0.6" }
Crate Features
concurrent
: used to enable concurrency during execution and proof generation. Disabled by default.idxdb
: includesWebStore
, an IdexedDB implementation of theStore
trait. Disabled by default.sqlite
: includesSqliteStore
, a SQLite implementation of theStore
trait. Disabled by default.tonic
: includesTonicRpcClient
, a Tonic client to communicate with Miden node. Disabled by default.web-tonic
: includesWebTonicRpcClient
, an Tonic client to communicate with the Miden node in the browser. Disabled by default.testing
: useful feature that lowers PoW difficulty when enabled, meant to be used during development and not on production. Disabled by default.
To compile with no_std
, disable default features via --no-default-features
flag.
Store and RpcClient implementations
The library user can provide their own implementations of Store
and RpcClient
traits, which can be used as components of Client
, though it is not necessary. The Store
trait is used to persist the state of the client, while the RpcClient
trait is used to communicate via gRPC with the Miden node.
The sqlite
and tonic
features provide implementations for these traits using Rusqlite and Tonic respectively. The idxdb
and web-tonic
features provide implementations based on IndexedDB and tonic-web which can be used in the browser.
License
This project is MIT licensed.
Dependencies
~20–58MB
~1M SLoC