[package]
name = "apprtc"
version = "0.4.0"
edition = "2024"
license = "MIT/Apache-2.0"
authors = ["Rain Liu <y@liu.mx>"]
repository = "https://github.com/webrtc-rs/apprtc"
homepage = "https://appr.tc"
description = "AppRTC P2P/SFU Server in Rust"
keywords = ["signaling", "networking", "protocols", "sans-io"]
categories = ["network-programming", "asynchronous", "multimedia"]
[dependencies]
signaling = { version = "0.4.0", path = "signaling" }
signaling-proto = { version = "0.4.0", path = "signaling/signaling-proto" }
sfu = { version = "0.4.0", path = "sfu" }
rtc = { version = "0.20.0-rc.4", path = "sfu/webrtc/rtc" }
sansio = "1.0.1"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.150"
url = "2"
rand = "0.10.1"
uuid = { version = "1", features = ["v4", "v8"] }
minijinja = "2"
tokio = { version = "1", features = ["io-util", "macros", "net", "rt-multi-thread", "signal", "sync", "time"] }
axum = { version = "0.8", features = ["ws"] }
futures-util = "0.3"
tower-http = { version = "0.6", features = ["fs"] }
clap = { version = "4.6.1", features = ["derive"] }
env_logger = "0.11.11"
chrono = "0.4.45"
anyhow = "1.0.103"
log = "0.4.33"
rustls = { version = "0.23.41", default-features = false, features = ["ring", "std", "tls12"] }
rustls-pemfile = "2.2.0"
tokio-rustls = { version = "0.26.4", default-features = false, features = ["logging", "ring", "tls12"] }
tokio-tungstenite = { version = "0.29", features = ["rustls-tls-webpki-roots"] }
bytes = "1"
tonic = { version = "0.14.6", features = ["tls-ring", "tls-webpki-roots"] }
tokio-stream = { version = "0.1", features = ["net"] }
async-trait = "0.1"
[dev-dependencies]
webrtc = { version = "0.20.0-rc.4", path = "sfu/webrtc" }
tower = { version = "0.5", features = ["util"] }