[package] name = "synor-wallet" version = "0.1.0" description = "Secure Synor blockchain wallet with post-quantum cryptography" authors = ["Synor Team"] edition = "2021" license = "MIT" [lib] name = "synor_wallet_lib" crate-type = ["staticlib", "cdylib", "rlib"] [build-dependencies] tauri-build = { version = "2", features = [] } [dependencies] tauri = { version = "2", features = ["tray-icon"] } tauri-plugin-fs = "2" tauri-plugin-store = "2" tauri-plugin-shell = "2" tauri-plugin-dialog = "2" tauri-plugin-clipboard-manager = "2" tauri-plugin-updater = "2" tauri-plugin-notification = "2" tauri-plugin-process = "2" serde = { version = "1", features = ["derive"] } serde_json = "1" tokio = { version = "1", features = ["full"] } thiserror = "1" # Cryptography bip39 = "2" argon2 = "0.5" chacha20poly1305 = "0.10" rand = "0.8" sha2 = "0.10" hmac = "0.12" hex = "0.4" zeroize = { version = "1", features = ["derive"] } bech32 = "0.11" # OS Keychain integration (macOS Keychain, Windows Credential Manager, Linux Secret Service) keyring = "3" # HTTP client for RPC calls reqwest = { version = "0.12", features = ["json"] } # WebSocket client for real-time events tokio-tungstenite = { version = "0.24", features = ["native-tls"] } futures-util = "0.3" # Logging tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Utils uuid = { version = "1", features = ["v4"] } once_cell = "1" md5 = "0.7" # Local crates from the monorepo (required for wallet functionality) synor-crypto = { path = "../../../crates/synor-crypto" } synor-types = { path = "../../../crates/synor-types" } synor-rpc = { path = "../../../crates/synor-rpc" } # Optional: Embedded node support (enables running a full node inside the wallet) synord = { path = "../../../apps/synord", optional = true } synor-mining = { path = "../../../crates/synor-mining", optional = true } synor-network = { path = "../../../crates/synor-network", optional = true } [features] default = ["custom-protocol"] custom-protocol = ["tauri/custom-protocol"] # Enable embedded node support - compiles full node into wallet binary embedded-node = ["dep:synord", "dep:synor-mining", "dep:synor-network"] [profile.release] lto = true opt-level = "z" codegen-units = 1 strip = true