Rust library, which can be used by other project to programmatically interact with the Miden rollup.
In order to utilize the miden-client
library, you can add the dependency to your project's Cargo.toml
file:
miden-client = { version = "0.7" }
Features | Description |
---|---|
concurrent |
Used to enable concurrency during execution and proof generation. Disabled by default. |
idxdb |
Includes WebStore , an IndexedDB implementation of the Store trait. Disabled by default. |
sqlite |
Includes SqliteStore , a SQLite implementation of the Store trait. This relies on the standard library. Disabled by default. |
tonic |
Includes TonicRpcClient , a Tonic client to communicate with Miden node. This relies on the standard library. Disabled by default. |
web-tonic |
Includes WebTonicRpcClient , a Tonic client to communicate with the Miden node in the browser. Disabled by default. |
testing |
Enables functions meant to be used in testing environments. Disabled by default. |
Features sqlite
and idxdb
are mutually exclusive.
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.
This project is MIT licensed.