Skip to main content
Version: v5.4.0

Introduction

OpenReader is an open-source text-to-speech document reader built with Next.js. It provides a multilingual read-along experience with narration for EPUB, PDF, TXT, MD, and DOCX documents.

Previously named OpenReader-WebUI.

It supports multiple TTS providers, including Kokoro running locally in OpenReader itself, OpenAI, Replicate, Google AI Studio, Fish Audio, OpenRouter, and custom OpenAI-compatible endpoints such as Kokoro-FastAPI, KittenTTS-FastAPI, Orpheus-FastAPI, and Supertonic.

🚀 Get OpenReader​

OptionBest for
Desktop appOne person on macOS, Windows, or Linux. Install and read: no server, Docker, or account. Download
Docker ComposeSelf-hosting for yourself or several users, on a home server, NAS, or VPS
Vercel + compute workerHosting the web app on Vercel with an external worker
iPhone, iPad, and MacA separate native Swift app with on-device voices, in beta on TestFlight

✨ Highlights​

  • ▶️ Progressive Background Generation and Playback
    • Listening starts as soon as the first segment is ready while the worker generates ahead into one durable document timeline
    • Cached audio is reused across seeks, reloads, and M4B/MP3 exports
  • 🧱 Layout-aware PDF Parsing
    • PP-DocLayoutV3 (ONNX) detects structured blocks with cross-page stitching and geometry-based highlighting for precise read-along sync and clean TTS segmentation
  • ⏱️ Word-by-word Highlighting from local Kokoro's own timings, or ONNX Whisper alignment for other providers
    • Powered by the embedded or standalone compute worker control plane (NATS JetStream-backed)
  • 📚 Five Readable Formats
    • Synchronized EPUB, PDF, TXT, MD, and worker-converted DOCX, with generated PDF/EPUB library previews
  • 🎯 Multi-Provider TTS Support
    • On-device: Kokoro (local) runs Kokoro-82M inside the compute worker, with no separate TTS service or API key
    • Self-hosted: Kokoro-FastAPI (multi-voice combinations), KittenTTS-FastAPI, Orpheus-FastAPI, Supertonic, or any custom OpenAI-compatible endpoint
    • Cloud: OpenAI (tts-1, tts-1-hd, gpt-4o-mini-tts), Replicate (built-in catalog + any model ID), Google AI Studio (Gemini 3.8 Flash TTS and Flash-Lite TTS), Fish Audio (S2.1 Pro Free and paid models), OpenRouter (every speech model in its catalog)
    • Your own voice: record or import a short sample and narrate with it through Fish Audio or a voice-cloning OpenRouter model
  • 🌐 Multilingual Support
    • Choose a document language for language-aware narration and highlighting
    • Available languages depend on the configured provider, model, and voice
  • 🎧 Audiobook Export in M4B or MP3, assembled by the worker from the same playback cache
  • 🗂️ Flexible Backend — embedded SeaweedFS or S3-compatible storage, SQLite or Postgres, server library import, and device sync
  • 💻 Desktop App for macOS, Windows, and Linux, with local voices and automatic updates
  • 🔐 Auth and User Isolation — auth is required, with optional anonymous auth sessions for guest flows
  • 🎨 Customizable — 12 built-in light and dark themes plus a custom theme, typography and highlight colors, voice favorites, skipped citations and brackets, and added pauses, as app defaults with per-book overrides

🧭 Key Docs​

Source Repository​