[package] name = "matchbox_socket_nostr" version = "0.6.4" authors = ["Johan Helsing ", "stu ",] description = "Painless WebRTC peer-to-peer full-mesh networking socket over nostr" edition = "2021" license = "MIT OR Apache-2.0" keywords = ["gamedev", "webrtc", "peer-to-peer", "networking", "wasm"] categories = [ "network-programming", "game-development", "wasm", "web-programming", ] repository = "https://github.com/stum0/matchbox_nostr" [features] ggrs = ["dep:bincode", "dep:ggrs"] [dependencies] uuid = "1.3.1" derive_more = "0.99" futures-channel = { version = "0.3", default-features = false, features = [ "sink", ] } futures = { version = "0.3", default-features = false } futures-timer = { version = "3.0", default-features = false } futures-util = { version = "0.3", default-features = false, features = [ "sink", "async-await-macro", "channel", ] } serde = { version = "1.0", default-features = false, features = ["derive"] } serde_json = { version = "1.0", default-features = false, features = ["alloc"] } log = { version = "0.4", default-features = false } thiserror = "1.0" cfg-if = "1.0" async-trait = { version = "0.1.64" } once_cell = { version = "1.17", default-features = false, features = [ "race", "alloc", ] } crossbeam-channel = "0.5" ggrs = { version = "0.9.3", default-features = false, optional = true } bincode = { version = "1.3", default-features = false, optional = true } nostr = { version = "0.21.0" } [target.'cfg(target_arch = "wasm32")'.dependencies] ggrs = { version = "0.9.3", default-features = false, optional = true, features = [ "wasm-bindgen", ] } ws_stream_wasm = { version = "0.7", default-features = false } wasm-bindgen-futures = { version = "0.4", default-features = false } wasm-bindgen = { version = "0.2", default-features = false, features = [ "serde-serialize", ] } futures-timer = { version = "3.0", default-features = false, features = [ "wasm-bindgen", ] } js-sys = { version = "0.3", default-features = false } web-sys = { version = "0.3.22", default-features = false, features = [ "MessageEvent", "RtcConfiguration", "RtcDataChannel", "RtcDataChannelInit", "RtcDataChannelType", "RtcIceCandidate", "RtcIceCandidateInit", "RtcIceConnectionState", "RtcIceGatheringState", "RtcPeerConnection", "RtcPeerConnectionIceEvent", "RtcSdpType", "RtcSessionDescription", "RtcSessionDescriptionInit", ] } serde-wasm-bindgen = { version = "0.5" } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] async-tungstenite = { version = "0.21", default-features = false, features = [ "async-std-runtime", "async-tls", ] } webrtc = { version = "0.7", default-features = false } bytes = { version = "1.1", default-features = false } async-compat = { version = "0.2.1", default-features = false } [dev-dependencies] futures-test = { version = "0.3" }