framework/Cargo.toml
2025-07-21 00:17:46 +02:00

53 lines
1.4 KiB
TOML

[package]
name = "framework"
version = "0.1.0"
edition = "2021"
[lib]
name = "framework"
path = "src/lib.rs"
[dependencies]
# WebSocket client dependency with conditional crypto features
circle_client_ws = { path = "../circles/src/client_ws", default-features = false, features = [] }
# Core dependencies
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
log = "0.4"
thiserror = "1.0"
uuid = { version = "1.0", features = ["v4"] }
# Async dependencies
futures-util = "0.3"
futures-channel = "0.3"
# WASM-specific dependencies
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
yew = { version = "0.21", features = ["csr"] }
gloo = "0.11"
gloo-timers = { version = "0.3", features = ["futures"] }
web-sys = { version = "0.3", features = ["Storage", "Window", "FormData", "HtmlFormElement", "HtmlInputElement", "HtmlSelectElement"] }
js-sys = "0.3"
hex = "0.4"
k256 = { version = "0.13", features = ["ecdsa", "sha256"] }
getrandom = { version = "0.2", features = ["js"] }
# Native-specific dependencies
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { version = "1.0", features = ["rt", "macros", "time"] }
[dev-dependencies]
tokio-test = "0.4"
# Features
[features]
default = []
crypto = ["circle_client_ws/crypto"]
wasm-compatible = [] # For WASM builds without crypto to avoid wasm-opt issues
[workspace]
members = ["examples/website"]