Overview
Supertonic is an open-weight text-to-speech (TTS) system built for fast, local speech synthesis. It runs entirely on your own device through ONNX Runtime, so there are no cloud servers, no API calls, and no data leaving your machine. This makes it a good fit for projects where speed and privacy both matter.
The model is small by TTS standards, with only 99 million parameters, which keeps downloads light and cold starts quick. It supports 31 languages, outputs studio-grade 44.1kHz 16-bit WAV audio, and ships with ready-to-use SDK examples for many languages including Python, Node.js, the browser via WebGPU, Java, C++, C#, Go, Swift, Rust, and Flutter.
What it does
- Runs fully on-device through ONNX Runtime with no network dependency, no GPU requirement, and complete privacy
- Compact 99M-parameter open-weight model that downloads quickly and uses little memory compared to larger TTS systems
- Supports 31 languages directly, plus a language-agnostic 'na' mode when the input language is unknown
- Outputs high-quality 44.1kHz 16-bit WAV audio ready for playback without an external upsampler
- Inline expression tags such as <laugh>, <breath>, and <sigh> add natural human nuance without reference audio
- Multi-runtime SDK examples for Python, Node.js, browser (WebGPU), Java, C++, C#, Go, Swift, iOS, Rust, and Flutter
Getting started
The quickest path is the Python SDK, which downloads the model from Hugging Face automatically on first run. You can generate speech in a few lines or expose Supertonic as a local HTTP server.
Install the Python SDK
Install the package with pip. On the first run, Supertonic downloads the model assets from Hugging Face automatically.
pip install supertonicGenerate speech in Python
Create a TTS object, pick a voice style, and synthesize text to a WAV file. You can set the language, quality steps, and speaking speed.
from supertonic import TTS
tts = TTS(auto_download=True)
style = tts.get_voice_style(voice_name="M1")
text = "Supertonic is a lightning fast, on-device TTS system."
wav, duration = tts.synthesize(
text=text,
lang="en",
voice_style=style,
total_steps=8,
speed=1.05,
)
tts.save_audio(wav, "output.wav")Run a local HTTP server
The Python SDK can run Supertonic as a local service with a native /v1/tts endpoint and an OpenAI-compatible /v1/audio/speech endpoint, plus interactive docs at /docs.
pip install 'supertonic[serve]'
supertonic serve --host 127.0.0.1 --port 7788Clone the repo for other runtimes
To use the Node.js, browser, Java, C++, Go, or other examples, clone the repository and download the ONNX models and preset voices into the assets directory with Git LFS.
git clone https://github.com/supertone-inc/supertonic.git
cd supertonic
git lfs install
git clone https://huggingface.co/Supertone/supertonic-3 assetsCommands and code are distilled from the project's own documentation — always check the official repo for the latest.
When to use it
- Adding offline, private voice output to desktop, mobile, or edge apps where data must stay on the device
- Reading entire webpages or documents aloud quickly thanks to low-latency, real-time synthesis
- Building multilingual voice features across 31 languages without separate per-language adapters
- Serving local speech generation to agents, browser extensions, or OpenAI-compatible audio clients through the built-in HTTP server
How Supertonic compares
Supertonic alongside other open-source audio, music & voice tools AI/TLDR tracks, ranked by GitHub stars.
| Tool | Stars | What it does |
|---|---|---|
| Whisper | ★ 109k | OpenAI's speech recognition model that transcribes and translates audio across many languages. |
| GPT-SoVITS | ★ 61.9k | An open-source WebUI that clones a voice from a short audio sample and turns text into speech, with zero-shot and few-shot fine-tuning. |
| Voicebox | ★ 54.9k | Local-first voice studio that clones a voice from a short sample, generates speech across seven TTS engines and 23 languages, handles system-wide dictation, and speaks for agents over MCP. |
| VibeVoice | ★ 54.4k | Microsoft's text-to-speech model for generating long, expressive multi-speaker audio like podcasts. |
| whisper.cpp | ★ 53.7k | A dependency-free C/C++ port of Whisper built on ggml, running speech recognition on CPU, Metal, CUDA, Vulkan and NPUs from phones to servers. |
| Coqui TTS | ★ 46k | A library of text-to-speech models including the multilingual XTTS voice-cloning model. |
| ChatTTS | ★ 39.9k | ChatTTS is an open-source text-to-speech model tuned for dialogue, with multi-speaker support and fine-grained control over laughter, pauses, and prosody. |
| Supertonic | ★ 13.8k | Lightning-fast on-device text-to-speech that runs locally with no cloud |
