Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TTS Reader

A self-contained AI-powered TTS player with 28 human-sounding neural voices, based on Kokoro's 82M-param model — no cloud, no downloads, works entirely offline

TTS Reader Screenshot

Features

  • Kokoro TTS Engine - Open-weight neural TTS model (82M params) for natural-sounding speech
  • 28 English Voices - American/British, male/female, selectable at runtime
  • Clipboard Monitoring - Automatically detects when you copy text
  • Global Shortcut - Press Cmd+Shift+R to play/pause from anywhere
  • Speed Control - Adjustable speech rate (0.5x to 2.0x)
  • Voice Selection - Choose from 28 voices in the dropdown below controls
  • Self-Contained - Model and voices embedded in the binary, no external files needed
  • Minimal UI - Tiny floating player that doesn't get in the way

Download

Download the latest release:

Note: application only works for MacOS and Linux, future support for Windows is planned.

TTS Reader.dmg

TTS Reader.deb

How to Use

  1. Copy text or Select text anywhere on your Mac/Linux (select text + Cmd+C)
  2. Click Play or press Cmd+Shift+R to start listening
  3. Adjust speed with the << and >> buttons
  4. Select Voice - Choose from 28 voices in the dropdown below the controls
  5. Click Stop to stop playback

Building from Source

Prerequisites

  • Rust (install via rustup)
  • Dioxus CLI
cargo install dioxus-cli

Development

# Clone the repository
git clone https://github.com/yourusername/tts-reader.git
cd tts-reader

# Run in development mode
cargo run -p tts-reader
# Or
cd packages/desktop && cargo run

Production Build

# Note: Build release binary (includes embedded model, ~310MB)
# Create a .app bundle for macOS
dx bundle --platform macos --package-types app

# Or create a .dmg installer for macOS
dx bundle --platform macos --package-types dmg

# Or create a .deb installer for linux
dx bundle --platform linux --package-types deb --package tts-reader

# And .exe for windows
dx bundle --platform windows --package-types nsis --package tts-reader

Tech Stack

  • Dioxus 0.7 - Cross-platform UI framework
  • Tokio - Async runtime
  • Kokoro TTS - Open-weight neural TTS model
  • ort - ONNX Runtime for model inference
  • rodio - Audio playback
  • macOS say command - Fallback TTS
  • Linux espeak command - Fallback TTS
  • pbpaste or xclip - Clipboard monitoring

Voice Configuration

The default voice can be configured via a .env file in the project root:

KOKORO_VOICE=af_heart                    # Default voice (American Female)
# KOKORO_MODEL_DIR=/path/to/models       # Optional: override model path
# KOKORO_VOICE_DIR=/path/to/voices       # Optional: override voice dir

Available voices:

  • American Female: Heart, Alloy, Aoede, Bella, Jessica, Kore, Nicole, Nova, River, Sarah, Sky
  • American Male: Adam, Echo, Eric, Fenrir, Liam, Michael, Onyx, Puck, Santa
  • British Female: Alice, Emma, Isabella, Lily
  • British Male: Daniel, Fable, George, Lewis

Voice Samples

Listen to all 28 voice samples on the Kokoro-82M-v1.0-ONNX HuggingFace page.

License

MIT

About

A self-contained AI-powered TTS player with 28 human-sounding neural voices, based on Kokoro's 82M-param model — no cloud, no downloads, works entirely offline

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages