Glow-TTS

https://github.com/user-attachments/assets/2f08e88f-7720-42a2-92d1-e8c3e42062df
A fork of Glow with experimental Text-to-Speech capabilities.
⚠️ DISCLAIMER: This is an unofficial fork not affiliated with or maintained by the Charm team. See FORK_NOTICE.md for details.
What is this?
Glow-TTS adds Text-to-Speech functionality to the excellent Glow markdown reader. This experimental fork allows you to listen to your markdown documents using either:
- Piper TTS - Fast, offline, privacy-focused
- Google TTS - Online, easy setup, multiple languages
Features
TTS Capabilities
- Two TTS engines (Piper offline, Google online)
- Playback controls (play, pause, stop, skip)
- Speed control (0.5x to 2.0x)
- Audio caching for repeated content
- Sentence-by-sentence navigation
- Keyboard shortcuts in TUI mode
Keyboard Controls
When TTS is enabled in TUI mode:
| Key |
Action |
Space |
Play/Pause |
s |
Stop |
→ / n |
Next sentence |
← / p |
Previous sentence |
↑ |
Increase speed |
↓ |
Decrease speed |
Quick Start
# Check TTS dependencies
glow-tts --check-deps
# Use Piper TTS (offline)
glow-tts --tts piper README.md
# Use Google TTS (online)
glow-tts --tts gtts README.md
# Generate TTS config file
glow-tts --generate-tts-config
Installation

Base Installation
This fork maintains the same installation methods as the original Glow. Clone and build from source:
git clone https://github.com/dgnsrekt/glow-tts.git
cd glow-tts
go build -o glow-tts
TTS Dependencies
For Piper TTS (Offline)
- Download Piper from releases
- Download voice models from Hugging Face
- See TTS Setup Guide for detailed instructions
For Google TTS (Online)
pip install gtts
# or
pipx install gtts
Documentation
Configuration
Generate a TTS config file:
glow-tts --generate-tts-config
This creates ~/.config/glow/glow-tts.yml with options for:
- Default TTS engine selection
- Voice preferences
- Cache settings
- Speed defaults
Original Glow Features
This fork retains all original Glow functionality. For information about:
- Markdown rendering
- GitHub/GitLab integration
- Stashing documents
- Configuration options
Please refer to the original Glow documentation.
Important Notes
- Experimental: TTS features are experimental and may have bugs
- Upstream Sync: This fork attempts to stay synchronized with upstream Glow
- No Support: This is a personal project with no official support
- Original Credit: All base functionality credit goes to Charm
License
MIT - See LICENSE
- Original Glow Copyright (c) Charm
- TTS modifications Copyright (c) 2024 Contributors
Acknowledgments
- The Charm team for creating Glow
- Piper for offline TTS
- gTTS for Google TTS interface
Remember: Silent reading is optional. This fork makes your documentation speak for itself.