Shona text-to-speech desktop app — Electron + Flask + SGLang-Omni with streaming SSE synthesis
# Rungano
**A native desktop shell for Higgs Audio v3 TTS — multi-language, voice-cloning, emotion/style/SFX control.**
*Rungano* means "folktale" in Shona. Built to faithfully narrate Shona oral storytelling traditions — voice cloning, auto-chunking for long-form narration, and complete control over emotion, style, and sound effects.
## What this is
Rungano wraps the SGLang-Omni
serving stack in a real desktop application (Electron) with a clean dark UI,
system-tray integration, and a one-click launcher. It exposes the **full**
control surface of the Higgs v3 model:
- 21 emotions
- 3 styles (singing, shouting, whispering)
- 10 prosody tags (speed, pitch, pauses, expressiveness)
- 9 sound effects (laughter, crying, screaming, etc.)
- Zero-shot voice cloning from a 10-30s reference clip
- 102 languages, 24 kHz output
## Architecture
```
┌─────────────────────────────────────────────────────────────┐
│ Electron Desktop App (this repo) │
│ ┌──────────────────┐ IPC ┌────────────────────────┐ │
│ │ Renderer (UI) │◄────────►│ Main process │ │
│ │ HTML/CSS/JS │ │ - Window mgmt │ │
│ │ │ │ - System tray │ │
│ └────────┬─────────┘ │ - Subprocess control │ │
│ │ fetch └──────┬──────────┬──────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
└─────────────────────────────────────────────────────────────┘
│ │
┌───────────────┘ └──────────────┐
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ Python Flask proxy │ │ SGLang-Omni (WSL2) │
│ :7861 │ OpenAI-compat │ :8000 │
│ - /api/voices │ ─────────────► │ - /v1/audio/speech │
│ - /api/tts │ │ - 4B model on GPU │
│ - /api/health …