Book TTS Reader — listen to your books

Listen to your PDFs, EPUBs, and pasted text with a local Kokoro neural voice and synchronized word and line highlighting.

Listen to a sample Free & open source · AGPL-3.0 · No account

Listen to a sample

Jane Austen · Pride and Prejudice, Chapter I

Press play to hear real audio synthesized locally by Kokoro, or click a sentence to jump right to it.

Voice: af_heart (1.0×)
It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. However little known the feelings or views of such a man may be on his first entering a neighbourhood, this truth is so well fixed in the minds of the surrounding families, that he is considered the rightful property of some one or other of their daughters.
0:00 Kokoro-82M · af_heart · 24 kHz local neural speech 0:24

Features

PDF, EPUB, and pasted text

Open a PDF or EPUB or paste a passage directly; EPUB headings, lists, superscripts, subscripts, MathML equations, and printed page numbers keep their structure.

Synchronized highlighting & click-to-read

Word and line highlighting follows the audio in real time, and clicking any passage starts reading right from that spot.

Saved reading progress to the second

Your exact position is anchored in a local SQLite database and resumes where you left off across restarts and changes to narration settings.

Local Kokoro voices at your pace

Select a Kokoro-82M voice and adjust playback speed for your book while upcoming segments preload and cache in the background.

Chapter, page, and 15-second navigation

Skip 15 seconds forward or backward seamlessly across segment boundaries, or jump straight to any chapter or printed page.

Clean layout filtering

Automatically skips running headers, footers, and page numbers, with optional toggles to include footnotes, captions, and sidebars.

Privacy

Your books stay on your computer.

  • Kokoro generates speech locally on your computer.
  • No account. No telemetry, analytics, or cloud services.
  • Your books and pasted text are never uploaded.
  • Your library, reading position, and generated audio cache are stored locally on your disk, with a Clear cache button in Settings whenever you want to free space.

The initial download needs a connection. The app downloads Kokoro’s configuration, model weights, and selected voice files from Hugging Face (hexgrad/Kokoro-82M) when they aren’t already cached. After that, speech generation runs completely offline.

Local speech generation diagram Book, voice model, and speakers are inside your computer. A crossed-out cloud outside it indicates no cloud server is used. YOUR COMPUTER Book Voice model Speakers No server · No cloud
What is stored, and where?

The library and reading progress anchors live in reader.db; generated WAV audio and JSON timing cues live in cache/; pasted texts live in pasted-texts/. The audio cache has a configurable size limit and can be cleared on demand in Settings while keeping your library and reading positions.

Windows
%LOCALAPPDATA%\BookTTSReader (installer defaults to %LOCALAPPDATA%\Programs\BookTTSReader)
macOS
~/Library/Application Support/BookTTSReader
Linux
$XDG_DATA_HOME/BookTTSReader (or ~/.local/share/BookTTSReader)

Model and voice downloads are stored in the Hugging Face cache, normally ~/.cache/huggingface/hub (or HF_HOME / HUGGINGFACE_HUB_CACHE). Preferences use Qt’s settings storage under BookTTS / BookTTSReader.

Running from source clears generated audio on exit by default. Set BOOKTTS_KEEP_CACHE=1 to keep it across development runs.

Download

Free and open source. Choose your platform to get started.

macOS

.dmg · Apple silicon (arm64)

Open the disk image and drag Book TTS Reader to /Applications.

Requires a Mac with Apple silicon (M1 or later). Intel Macs: run from source.

Download for macOS

The macOS application is code-signed and notarized.

Windows

Setup.exe

Run the installer (BookTTSReader-Setup.exe). It installs into %LOCALAPPDATA%\Programs\BookTTSReader for your user without administrator privileges.

Download for Windows

The Windows installer is not yet code-signed. Microsoft Defender SmartScreen may show an unknown-publisher warning on first run.

Build from source

Python 3.12 · Cross-platform

Clone the repository, create a Python 3.12 virtual environment, install requirements.txt, and run python main.py.

Run from source

Works on Linux, Intel Macs, Apple silicon Macs, and Windows. Requires Python 3.12.

SHA-256 checksums are published with every release. Verify your download before running it.