Convert ebooks and documents into audiobooks using Piper TTS — locally, privately, and free.
Installation | CLI Guide | GUI Guide | Vision
Input files must be DRM-free. This tool cannot process DRM-protected ebooks (e.g., Kindle .azw, Adobe DRM .epub). Use DRM-free sources or legally remove DRM from files you own.
- Local processing — no cloud services, no data leaves your machine
- GUI and CLI interfaces
- Converts epub, docx, txt, md, html, pdf to MP3
- Batch processing multiple files
- ID3 metadata tagging (author, title, track numbers)
- Voice browser to download from 100+ Piper voices
- Interactive or random voice selection
- Adjustable speech speed
# GUI application (includes CLI)
brew install --cask tigger04/tap/make-audiobook
# CLI only
brew install tigger04/tap/make-audiobooknix run github:tigger04/make-audiobookSee the Installation Guide for Linux, Windows, and manual installation.
Launch from Applications, or:
make gui- Drag files onto the window
- Select a voice
- Click "Convert to Audiobook"
# Convert with interactive voice selection
make-audiobook mybook.epub
# Random voice
make-audiobook mybook.epub --random-voice
# Batch processing with high-quality voices
make-audiobook chapter*.txt --random=high
# Adjust speed (higher = slower, default 1.5)
make-audiobook mybook.epub --length_scale=2.0| Input | Output |
|---|---|
| .epub | .mp3 |
| .docx | |
| .txt | |
| .md | |
| .html | |
- Piper TTS — neural text-to-speech
- FFmpeg — audio encoding
- Pandoc — document conversion
- PySide6 — GUI framework (LGPL)
- fzf — interactive voice selection (CLI)
- fd — fast file finder
| Target | Description |
|---|---|
make install |
Install CLI dependencies |
make install-gui |
Install GUI dependencies and default voices |
make gui |
Launch the GUI |
make test |
Run all tests |
make test-gui |
Run GUI tests |
make lint |
Run linters (Ruff, ShellCheck) |
make clean |
Remove build artefacts |
make release |
Tag, build, and push a release |
make help |
Show all targets |
| Path | Description |
|---|---|
make-audiobook |
CLI executable (bash) |
make-audiobook-gui |
GUI launcher script |
piper-voices-setup |
Voice installation script |
gui/ |
PySide6 GUI source code |
tests/gui/ |
GUI test suite (264 tests) |
docs/ |
Documentation |
homebrew/ |
Homebrew formula and cask |
flake.nix |
Nix flake for NixOS/nix-darwin |
scripts/ |
Build scripts (macOS .app bundle) |
resources/ |
App icon and assets |
Makefile |
Build targets |
| Document | Description |
|---|---|
| Installation Guide | Setup for macOS, Linux, NixOS, Windows |
| CLI Usage | Command-line options and examples |
| GUI Usage | Visual interface walkthrough |
| Project Vision | Goals and design philosophy |
| Implementation Plan | GUI architecture and phasing |
MIT — Copyright Tadhg Paul