[package] name = "nirc-rs" version = "0.10.0" edition = "2021" description = "multi-protocol terminal chat client" license = "GPL-3.0-or-later" authors = ["Jeremy Anderson "] repository = "https://git.dcos.net/dcosnet/nirc-rs" homepage = "https://dcos.net" readme = "README.md" keywords = ["irc", "matrix", "discord", "p2p", "chat", "terminal", "tui"] categories = ["command-line-utilities", "network-programming", "cryptography"] [dependencies] tokio = { version = "1", features = ["full", "sync", "rt-multi-thread"] } futures = "0.3" ratatui = "0.29" crossterm = "0.28" reqwest = { version = "0.12", features = ["json", "stream", "rustls-tls"], default-features = false } url = "2.5" argon2 = "0.5" aes-gcm = "0.10" rand = "0.8" zeroize = { version = "1.8", features = ["derive"] } base64 = "0.22" dirs = "6" tempfile = "3" serde = { version = "1", features = ["derive"] } serde_json = "1" chrono = { version = "0.4", features = ["serde"] } thiserror = "2" anyhow = "1" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } sha2 = "0.10" yamux = "0.13" async-trait = "0.1" libp2p = { version = "0.54", features = ["tcp", "tokio", "noise", "yamux", "gossipsub", "mdns", "identify", "ping", "request-response", "macros"] } tokio-util = { version = "0.7", features = ["io", "codec", "compat"] } dashmap = "6" toml = "0.8" x25519-dalek = { version = "2", features = ["zeroize", "static_secrets"] } # 0.1.2: TLS + SASL + ISUPPORT for real-world IRC connectivity tokio-rustls = "0.26" rustls-pemfile = "2" webpki-roots = "0.26" # N-3.1: Dynamic .so plugin loading libloading = "0.8" # 0.2.0: Matrix protocol (Phase D) — full client with megolm E2EE matrix-sdk = { version = "0.18", default-features = false, features = ["e2e-encryption", "sqlite", "socks", "sso-login"] } # 0.5.0: Revolt/Stoat protocol — REST + WebSocket client tokio-tungstenite = { version = "0.24", features = ["rustls-tls-webpki-roots"] } [dev-dependencies] tokio-test = "0.4"