[package] name = "webassembly" version = "0.1.0" edition = "2024" description = "Cryptographic module with CLI, Rhai scripting, and WebAssembly support" repository = "https://github.com/yourusername/webassembly" license = "MIT" [lib] crate-type = ["cdylib", "rlib"] [[bin]] name = "hero-vault" path = "src/main.rs" [dependencies] # Existing dependencies wasm-bindgen = "0.2" js-sys = "0.3" wasm-bindgen-futures = "0.4" console_error_panic_hook = "0.1.7" k256 = { version = "0.13", features = ["ecdsa", "serde"] } rand = { version = "0.8", features = ["getrandom"] } getrandom = { version = "0.2", features = ["js"] } chacha20poly1305 = "0.10" once_cell = "1.18" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" base64 = "0.21" sha2 = "0.10" ethers = { version = "2.0", features = ["abigen", "legacy"] } hex = "0.4" idb = "0.6.4" # New dependencies for CLI clap = { version = "4.3", features = ["derive"] } colored = "2.0" dirs = "5.0" rustyline = "11.0" log = "0.4" env_logger = "0.10" rpassword = "7.2" # Rhai scripting rhai = { version = "1.14", features = ["sync", "serde"] } # Async runtime tokio = { version = "1.28", features = ["rt", "rt-multi-thread"] } [dependencies.web-sys] version = "0.3" features = [ "console", "Document", "Element", "HtmlElement", "Node", "Window", "Storage", "Performance" ] [features] default = ["cli", "wasm"] cli = [] wasm = [] [dev-dependencies] wasm-bindgen-test = "0.3" [profile.release] opt-level = "s" # Optimize for size lto = true # Link-time optimization