# ReTeamSpeak Cross-platform TeamSpeak 3 client supporting Windows, macOS, Linux, iOS, and Android. ## Features - TeamSpeak 3 protocol implementation (UDP, AES-128-EAX encryption) - Voice communication with Opus codec - Text messaging (server, channel, private) - Channel and client management - Identity and bookmark management - Cross-platform UI (Tauri v2 + React) ## Architecture ``` src/ ├── shared/ # Shared types (~700 lines) ├── tscore/ # Protocol core (~1800 lines) │ ├── protocol/ # Packet parsing, commands │ ├── crypto/ # AES-EAX, ECDH, SHA │ └── connection/ # Handshake, state machine, resend ├── tsaudio/ # Audio engine (~280 lines) ├── tsdb/ # Database layer (~400 lines) └── tauri-app/ # Application shell ├── src-tauri/ # Rust backend └── frontend/ # React frontend ``` ## Build ### Prerequisites - Rust 1.70+ - Node.js 20+ - System dependencies (see below) ### Linux ```bash sudo apt install libdbus-1-dev pkg-config libgtk-3-dev \ libwebkit2gtk-4.1-dev libayatana-appindicator3-dev \ librsvg2-dev libssl-dev libasound2-dev ``` ### Build Commands ```bash # Build core libraries cargo build -p shared -p tscore -p tsaudio -p tsdb # Run tests cargo test -p shared -p tscore -p tsaudio -p tsdb # Build frontend cd src/tauri-app/frontend && npm install && npm run build # Build desktop app cd src && cargo build --release ``` ### Using Podman (no root) ```bash podman run --rm -v $(pwd):/workspace:Z -w /workspace/src \ docker.io/library/debian:trixie bash -c " apt-get update -qq && apt-get install -y -qq curl pkg-config libdbus-1-dev libgtk-3-dev \ libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev \ libssl-dev libasound2-dev build-essential && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && source \$HOME/.cargo/env && cargo test -p shared -p tscore -p tsaudio -p tsdb " ``` ## Documentation - [SRS](docs/SRS.md) - Software Requirements Specification - [SAD](docs/SAD.md) - Software Architecture Document - [SDD](docs/SDD.md) - Software Design Document - [Protocol](docs/protocol.md) - TS3 Protocol Analysis - [Protocol Stack](docs/protocol_stack.md) - Protocol Stack Details ## License MIT OR Apache-2.0