[package] name = "hero_websocket_server" version = "0.1.0" edition = "2021" [lib] name = "hero_websocket_server" path = "src/lib.rs" [[bin]] name = "hero_websocket_server" path = "cmd/main.rs" [[example]] name = "wss_basic_example" path = "../../examples/wss_basic_example.rs" [[example]] name = "wss_auth_example" path = "../../examples/wss_auth_example.rs" required-features = ["auth"] [[example]] name = "wss_test_client" path = "../../examples/wss_test_client.rs" [[example]] name = "wss_server" path = "../../examples/wss_demo/wss_server.rs" required-features = ["auth"] [dependencies] rustls = "0.23.5" rustls-pemfile = "2.1.2" actix-web = { workspace = true, features = ["rustls-0_23"] } actix-web-actors = { workspace = true } actix = { workspace = true } env_logger = { workspace = true } log = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } redis = { workspace = true } uuid = { workspace = true } tokio = { workspace = true } chrono = { workspace = true } rhai_dispatcher = { path = "../../../../rhailib/src/dispatcher" } # Corrected relative path thiserror = { workspace = true } heromodels = { path = "../../../../db/heromodels" } # Webhook dependencies hmac = "0.12" sha2 = "0.10" dotenv = "0.15" bytes = "1.0" hex = { workspace = true } # Authentication dependencies (optional) secp256k1 = { workspace = true, optional = true } sha3 = { workspace = true, optional = true } rand = { workspace = true, optional = true } once_cell = { workspace = true } clap = { workspace = true } # Optional features for authentication [features] default = [] auth = ["secp256k1", "sha3", "rand"] [dev-dependencies] redis = { version = "0.23.0", features = ["tokio-comp"] } uuid = { version = "1.2.2", features = ["v4"] } tokio-tungstenite = { version = "0.19.0", features = ["native-tls"] } futures-util = { workspace = true } url = { workspace = true } heromodels = { path = "../../../../db/heromodels" } tokio = { workspace = true, features = ["full"] } native-tls = "0.2"