
13.06 MB
Android 5.0+
63
arm64-v8a
Verified safeScanned with ClamAV, APKiD, and Quark-Engine. No threats detected.
Description
A privacy-focused, offline-first Android EPUB reader built with Kotlin and the Readium 3.1.0 toolkit. Features three text-to-speech engines (System TTS, Piper, and Kokoro), sentence-level highlighting, bookmarks, full-text search, and a clean Material 3 UI.
Features
Library
- Import EPUB files from device storage
- Grid or list view with cover art
- Drag-to-reorder via handle
- Background metadata extraction (title, author, cover)
- Long-press to delete
Reader
- Full EPUB rendering via Readium (WebView-based)
- Table of Contents navigation
- Reading position auto-saved and restored
- Full-text search (up to 200 results)
- Bookmarks: add, view, navigate, delete
- Display settings: font family, font size, theme (Light/Sepia/Dark)
Text-to-Speech
System
Quality: varies
Speed: real-time
Offline: no
Voices: device voices
Piper
Quality: good
Speed: fast, about 0.5x RTF
Offline: yes
Voices: 7 English voices
Kokoro
Quality: near-human
Speed: slower, about 3 to 7x RTF
Offline: yes
Common TTS features:
- Sentence-block highlighting (current + next sentence preview)
- Auto-scroll and auto-page-turn
- Automatic chapter advancement
- Speed control (0.5x-3.0x)
- Foreground service with media notification controls
- Error recovery: resume from where it stopped
Piper TTS (Offline):
- 7 English voices (US + GB, male + female)
- ~63MB per voice, download in-app
- Default engine with auto-download on first play
- DC offset removal and fade-in/out for clean audio
Kokoro TTS (Offline, Near-Human Quality):
- 3 downloadable model packs:
- Kokoro English v0.19 (~340MB) -- 11 English voices
- Kokoro Multi-lang v1.0 (~333MB) -- 53 voices (English + Chinese + others)
- Kokoro Multi-lang v1.1 (~348MB) -- 103 voices (English + Chinese)
- Per-pack download/delete with speaker selection
- 24kHz sample rate output
- Streaming playback via generateWithCallback -- audio starts within ~200ms
- Paragraph-based generation (sentences grouped into ~400 char chunks) for seamless transitions
- Parallel pre-generation of next paragraph while current one plays
- Adaptive thread count (up to 8 threads on capable devices)
License
This project uses the following open-source components:
- Readium Kotlin Toolkit (BSD-3-Clause)
- sherpa-onnx (Apache-2.0)
- Piper TTS models (MIT)
- Kokoro TTS (Apache-2.0)
Rate this app
Ratings & reviews
No reviews yet.