No description
Find a file
2026-07-09 12:31:10 +02:00
.cargo Initial commit: split VNOX monorepo into VNOX-Client 2026-07-09 11:52:57 +02:00
docs reorganize docs into 04-clients/ and 05-features/ 2026-07-09 12:31:10 +02:00
src Initial commit: split VNOX monorepo into VNOX-Client 2026-07-09 11:52:57 +02:00
.gitignore Initial commit: split VNOX monorepo into VNOX-Client 2026-07-09 11:52:57 +02:00
Cargo.lock Initial commit: split VNOX monorepo into VNOX-Client 2026-07-09 11:52:57 +02:00
Cargo.toml Initial commit: split VNOX monorepo into VNOX-Client 2026-07-09 11:52:57 +02:00
CHANGELOG.md add client docs, README, CHANGELOG 2026-07-09 12:30:56 +02:00
LICENSE add GPL-3.0 license 2026-07-09 12:05:04 +02:00
README.md add client docs, README, CHANGELOG 2026-07-09 12:30:56 +02:00

VNOX

Self-hosted realtime voice and chat. Decentralized. Lightweight. Moddable. Built on LNEx, a custom protocol for low-latency federated communication.

Not Discord. Not TeamSpeak. Not cloud.

vnox://server/channel

Status

Phase 1: implemented, not production ready.

See docs/00-status.md for an honest list of what works, what is only specified on paper, and known gaps.

Component Status
Gateway TCP listener, LNEx handshake, channels, chat, SQLite
Voice node UDP relay, voice packet routing
Desktop client egui UI, net layer, audio pipeline (partial)
LNEx protocol Specified and implemented (JSON in Phase 1)
Federation Planned (Phase 3)
Mobile client Planned (Phase 3)

Traffic in v0.1.x is unencrypted plaintext. Do not use in production.

Running locally

Requires Rust 1.85+.

# terminal 1 - gateway
cargo run -p vnox-gateway -- --config dev/config.toml

# terminal 2 - voice node
cargo run -p vnox-voice-node -- --config dev/config.toml

# terminal 3 - client
cargo run -p vnox-client

The client connects to 127.0.0.1:7600 by default (editable in the UI). Config details: dev/README.md.

Opus on Windows

audiopus_sys builds libopus from source via CMake. CMake 4.x requires a policy flag, already set in .cargo/config.toml:

[env]
CMAKE_POLICY_VERSION_MINIMUM = "3.5"

No manual steps needed.

License

GPL-3.0. See docs/LICENSE.md.

The LNEx protocol specification is CC0 (public domain).