[package]
name = "webylib"
version = "0.2.2"
edition = "2021"
rust-version = "1.85"
description = "Webcash HD wallet library — bearer e-cash with BIP32-style key derivation, SQLite storage, AES-256-GCM encryption, and full C FFI for cross-platform SDKs"
license = "MIT"
authors = ["Webycash Developers"]
homepage = "https://weby.cash"
repository = "https://github.com/webycash/webylib"
documentation = "https://docs.rs/webylib"
readme = "README.md"
keywords = ["webcash", "wallet", "payments", "bearer-cash", "hd-wallet"]
categories = ["cryptography", "cryptography::cryptocurrencies", "api-bindings"]
include = [
"src/**/*.rs",
"tests/**/*.rs",
"tests/**/*.txt",
"LICENSE",
"README.md",
"CHANGELOG.md",
"docs/**/*.md",
"include/**/*",
"cbindgen.toml",
]
[lib]
name = "webylib"
crate-type = ["lib", "cdylib", "staticlib"]
[[bin]]
name = "webyc"
path = "src/bin/cli.rs"
required-features = ["cli"]
[dependencies]
log = "0.4"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "2.0"
anyhow = "1.0"
tokio = { version = "1.0", features = ["full"] }
async-trait = "0.1"
sha2 = "0.10"
hmac = "0.12"
rand = "0.9"
rand_chacha = "0.9"
getrandom = "0.2"
aes-gcm = "0.10"
argon2 = "0.5"
hkdf = "0.12"
rusqlite = { version = "0.37.0", features = ["bundled"] }
reqwest = { version = "0.11", default-features = false, features = ["json", "rustls-tls"] }
clap = { version = "4.0", features = ["derive"], optional = true }
rpassword = { version = "7.3", optional = true }
hex = "0.4"
base64 = "0.22"
chrono = { version = "0.4", default-features = false, features = ["serde", "clock"] }
uuid = { version = "1.0", features = ["v4"] }
url = "2.5"
zeroize = { version = "1.5", features = ["derive"] }
[dev-dependencies]
tempfile = "3.0"
mockito = "1.7.0"
[features]
default = ["bundled-sqlite", "cli"]
bundled-sqlite = ["rusqlite/bundled"]
ffi = []
cli = ["dep:clap", "dep:rpassword"]
passkey = []
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]