2.3 KiB
High-Performance Voice Chat App
A highly optimized, self-hosted, multi-lane voice communication application built entirely in Rust. Designed as a modern, high-performance alternative to classic tools like TeamSpeak 3, it utilizes a custom UDP protocol for zero-latency voice transmission and TLS-secured TCP for reliable text chat, server state, and user authentication.
📖 Architecture & Documentation
This project has been extensively planned and documented. Before contributing or building, please review the core architectural documents located in the Documentation/ folder:
- Technical Specifications: Covers the Opus integration, Wasm plugin ABI, Database schema, and custom UDP payload anatomy.
- Implementation Plan: The low-level breakdown of the Jitter Buffer, Server Relay zero-copy logic, and local UI testing tools.
- Coding & Documentation Standards: Strict rules regarding zero
unsafecode, error handling, the Actor pattern, and PR requirements. - UI Mockups: Visual utilitarian references for the desktop client and web admin dashboard.
🚀 Milestones
Development is heavily structured into six distinct phases. For granular, code-level checklists of what needs to be built, see the Documentation/Mile_Stones/ directory:
- Milestone 1: The Foundation (Workspace, Protocol, Auth)
- Milestone 2: Local Audio & GUI (egui, cpal, WebRTC DSP)
- Milestone 3: The First Voice Call (Opus encode/decode, UDP relay)
- Milestone 4: Multi-User Routing (DashMap routing, Jitter Buffer, Whisper lists)
- Milestone 5: Management & Plugins (Axum Web Admin, SQLite, Extism)
- Milestone 6: Deployment & Release (Docker, ChaCha20, CI/CD)
🛠️ Getting Started
(Instructions for building the core_protocol, client_node, and server_node will be populated here during Milestone 1.)
⚖️ License
(License TBD)