Go to file
Kris Nuttycombe 825e969d1e
Merge pull request #75 from zcash/remove_deprecated_api_usage
Remove uses of `zcash_primitives` public reexports.
2024-12-20 11:21:56 -07:00
.github/workflows Add basic CI 2023-11-15 23:32:46 +00:00
src Address Clippy complaints. 2024-12-20 11:12:10 -07:00
.gitignore Update `Cargo.lock` file to latest releases. 2024-12-19 10:15:44 -07:00
Cargo.lock Migrate `zcash-inspect` to `zcash-devtool inspect` 2024-12-20 00:59:03 +00:00
Cargo.toml Migrate `zcash-inspect` to `zcash-devtool inspect` 2024-12-20 00:59:03 +00:00
LICENSE-APACHE Add readme and licenses 2023-07-05 02:21:47 +00:00
LICENSE-MIT Add readme and licenses 2023-07-05 02:21:47 +00:00
README.md Rename to zcash-devtool 2024-12-19 09:48:07 -07:00
rust-toolchain.toml Add Toolchain file to enforce minimum rustc version 2024-12-19 17:40:11 +00:00

README.md

zcash-devtool

This repository contains a CLI app for working with Zcash transactions and the Zcash blockchain, including stateless Zcash wallet functionality based upon the zcash_client_backend and zcash_client_sqlite crates. It is built by developers, for developers for use in prototyping Zcash functionality, and should not be considered production-ready. The command-line API that this tool exposes can and will change at any time and without warning.

Security Warnings

DO NOT USE THIS IN PRODUCTION!!!

This app has not been written with security in mind. It does however have affordances such as encryption of the mnemonic seed phrases that should make it viable for small scale experimentation, at your own risk.

Usage

No binary artifacts are provided for this crate; it is generally used via cargo run as follows:

To obtain the help docs:

cargo run --release -- --help

To obtain the help for a specific command (in this case, init)

cargo run --release -- --help init

To create a new empty testnet wallet:

cargo run --release -- -w <wallet_dir> init
cargo run --release -- -w <wallet_dir> sync

See the help docs for init for additional information, including for how to initialize a mainnet wallet. Initializing a mainnet wallet will require specifying a mainnet lightwallet server, e.g.

cargo run --release -- -w <wallet_dir> init -n "main" -s "zecrocks"
cargo run --release -- -w <wallet_dir> sync -s "zecrocks"

Whenever you update the zcash_client_sqlite dependency, in order to run necessary migrations:

cargo run --release -- -w <wallet_dir> upgrade

If you want to run with debug or trace logging:

RUST_LOG=debug cargo run --release -- -w <wallet_dir> <command>

License

All code in this workspace is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.