Your terminal just learned to read bedtime stories
A CLI tool that turns EPUBs, PDFs, and plain text into spoken audio using the Kokoro TTS model, with a twist: you can blend multiple voices into one.

What it does
kokoro-tts is a command-line text-to-speech tool built around the Kokoro ONNX model. Feed it a .txt, .epub, or .pdf file and it spits out WAV or MP3 audio, optionally split by chapter. It also accepts stdin, so you can pipe text directly from other programs and stream the result without saving to disk.
The interesting bit
Voice blending is the standout feature: mix two voices with custom weight ratios (e.g., af_sarah:60,am_adam:40) to create hybrid narrators. The project also handles the unglamorous work of parsing EPUB NCX metadata and extracting PDF table-of-contents structure so long documents come out organized by chapter, not as one giant audio blob.
Key highlights
- Runs fully offline after downloading the ONNX model and voice binary (~two files)
- 25 voices across 5 languages: US/UK English, French, Italian, Japanese, Mandarin
- GPU acceleration supported; Python 3.11–3.12 only (3.13+ is explicitly unsupported)
- Progress indicators and graceful interruption handling for long jobs
- Debug mode exposes NCX parsing details and chapter metadata for troubleshooting
Caveats
- Requires manually downloading model files to your working directory before first run
- No GUI yet; the TODO list has it unchecked
- “Personal project” disclaimer from the author; expectations for maintenance should be calibrated accordingly
Verdict
Worth a look if you want a no-subscription, scriptable audiobook generator or need to batch-process documents into audio. Skip it if you need a polished GUI, cloud APIs, or guaranteed long-term maintenance.
Frequently asked
- What is nazdridoy/kokoro-tts?
- A CLI tool that turns EPUBs, PDFs, and plain text into spoken audio using the Kokoro TTS model, with a twist: you can blend multiple voices into one.
- Is kokoro-tts open source?
- Yes — nazdridoy/kokoro-tts is open source, released under the MIT license.
- What language is kokoro-tts written in?
- nazdridoy/kokoro-tts is primarily written in Python.
- How popular is kokoro-tts?
- nazdridoy/kokoro-tts has 1.7k stars on GitHub.
- Where can I find kokoro-tts?
- nazdridoy/kokoro-tts is on GitHub at https://github.com/nazdridoy/kokoro-tts.