b067dbb7bf5511435d5befa4538c11b78a8f5fc3
tsdeclarations
@ fb4e50d643
TeamSpeak TUI Client
A modern, fast, and lightweight TeamSpeak 3 client built in Go with a beautiful Terminal User Interface (TUI).
🚀 Features
- Low Latency Audio: Optimized for both Windows (WASAPI) and Linux (PortAudio).
- Responsive UI: Built with Bubble Tea for a smooth terminal experience.
- Cross-Platform: Full support for Windows and Linux (including WSL2).
- Audio Controls: Per-user volume and mute indicators.
🛠️ Linux Dependencies
To build the project on Linux (including Ubuntu/WSL2), you need to install the following system libraries:
sudo apt-get update
sudo apt-get install -y \
libportaudio2 \
portaudio19-dev \
libopus-dev \
libpulse-dev
🔊 WSL2 Audio Setup
WSL2 does not have direct access to your Windows audio hardware. To enable audio, we recommend using a PulseAudio network bridge:
- Install PulseAudio on Windows (e.g., via portable binaries).
- Enable TCP: Edit
default.pain PulseAudio and add:load-module module-native-protocol-tcp auth-anonymous=1 listen=0.0.0.0 - Environment Variable: Set the
PULSE_SERVERin your WSL2 shell:export PULSE_SERVER=tcp:$(grep nameserver /etc/resolv.conf | awk '{print $2}'):4713
🏗️ Building
# General build
go build -o ts-tui ./cmd/tui
# Run with debug logging (highly recommended for audio setup)
go run ./cmd/tui --server your-ip:9987 --debug
⌨️ Common Keys
q: Quit cleanly.Arrows / hjkl: Navigate channels and users.Enter: Join channel.1: Poke user (in User View).m: Mute/Unmute audio.
Description