[package] name = "bdk" homepage = "https://bitcoindevkit.org" version = "1.0.0-alpha.1" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk" description = "A modern, lightweight, descriptor-based wallet library" keywords = ["bitcoin", "wallet", "descriptor", "psbt"] readme = "README.md" license = "MIT OR Apache-2.0" authors = ["Bitcoin Dev Kit Developers"] edition = "2021" rust-version = "1.57" [dependencies] log = "=0.4.18" rand = "^0.8" miniscript = { version = "9", features = ["serde"], default-features = false } bitcoin = { version = "0.29", features = ["serde", "base64", "rand"], default-features = false } serde = { version = "^1.0", features = ["derive"] } serde_json = { version = "^1.0" } bdk_chain = { path = "../chain", version = "0.5.0", features = ["miniscript", "serde"], default-features = false } # Optional dependencies hwi = { version = "0.5", optional = true, features = [ "use-miniscript"] } bip39 = { version = "1.0.1", optional = true } [target.'cfg(target_arch = "wasm32")'.dependencies] getrandom = "0.2" js-sys = "0.3" [features] default = ["std"] std = ["bitcoin/std", "miniscript/std", "bdk_chain/std"] compiler = ["miniscript/compiler"] all-keys = ["keys-bip39"] keys-bip39 = ["bip39"] hardware-signer = ["hwi"] test-hardware-signer = ["hardware-signer"] # This feature is used to run `cargo check` in our CI targeting wasm. It's not recommended # for libraries to explicitly include the "getrandom/js" feature, so we only do it when # necessary for running our CI. See: https://docs.rs/getrandom/0.2.8/getrandom/#webassembly-support dev-getrandom-wasm = ["getrandom/js"] [dev-dependencies] lazy_static = "1.4" env_logger = "0.7" # Move back to importing from rust-bitcoin once https://github.com/rust-bitcoin/rust-bitcoin/pull/1342 is released base64 = "^0.13" assert_matches = "1.5.0" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [[example]] name = "mnemonic_to_descriptors" path = "examples/mnemonic_to_descriptors.rs" required-features = ["all-keys"] [[example]] name = "miniscriptc" path = "examples/compiler.rs" required-features = ["compiler"]