shadow-drive-cli

Crates.ioshadow-drive-cli
lib.rsshadow-drive-cli
version0.7.2
sourcesrc
created_at2022-12-20 02:54:29.34076
updated_at2023-08-19 00:39:11.338123
descriptionThe Rust CLI for GenesysGo's Shadow Drive
homepage
repositoryhttps://github.com/GenesysGo/shadow-drive-rust
max_upload_size
id741913
size250,208
Tracy Adams (tracy-codes)

documentation

README

Shadow Drive CLI (Rust Version)

This is a CLI for Shadow Drive written using the Shadow Drive Rust crate. It is largely a clap wrapper around that crate.

Although there is already a CLI for Shadow Drive written in Typescript, I wanted something with identical interface to the official Solana CLI -k/--keypair and -u/--url arguments. You can pass all the same signer types ("prompt", "stdin", etc), but be aware that Ledger still does not support general message signing, and you therefore cannot perform most Shadow Network operations using a hardware wallet yet.

This is an opinionated CLI, choosing V2 storage accounts where applicable.

The CLI also works with authenticated GenesysGo Premium RPC Endpoints. See the --auth flag for more details.

Build

Build the binary like a standard Rust crate.

cargo build

Execution

The CLI looks for a Solana CLI config file. Configure your signing key there using the usual solana config set -k <SIGNER>, or pass one in using the -k/--keypair argument. If no -k/--keypair argument is used and no config file is found, this CLI defaults to the same keypair path as the Solana CLI's default, located at .config/solana/id.json.

For further usage details, there is extensive help text built into the binary.

$ target/debug/shadow-drive-cli --help

TODO

  • Better Error Handling
  • Testing
Commit count: 210

cargo fmt