Add environment variables for fine-grained control over TTS rate limiting and Better Auth behavior. Move documentation to external Docusaurus site with automated deployment workflows. - TTS rate limiting can now be enabled/disabled via TTS_ENABLE_RATE_LIMIT - Customizable daily limits for anonymous/authenticated users and IP backstops - Better Auth rate limiting can be disabled via DISABLE_AUTH_RATE_LIMIT - Rename library import env vars to IMPORT_LIBRARY_DIRS/DIR - Add docs-site with Docusaurus and GitHub Actions workflows - Update README to reference external documentation
2 KiB
2 KiB
| id | title | slug |
|---|---|---|
| intro | Introduction | / |
OpenReader WebUI is an open source text-to-speech document reader built with Next.js. It provides a read-along experience with narration for EPUB, PDF, TXT, MD, and DOCX documents.
It supports multiple TTS providers including OpenAI, DeepInfra, and custom OpenAI-compatible endpoints such as Kokoro-FastAPI and Orpheus-FastAPI.
Highlights
- Multi-provider TTS support
- Kokoro-FastAPI (including multi-voice combinations)
- Orpheus-FastAPI
- Custom OpenAI-compatible endpoints (
/v1/audio/voicesand/v1/audio/speech) - Cloud providers such as DeepInfra and OpenAI API
- Server-side sync and storage
- External library import from a server-mounted folder
- Sync documents between browser and server for multi-device use
- Server-side audiobook export in
m4b/mp3, with resumable chapter-based export - Read-along highlighting for PDF and EPUB
- Optional word-by-word highlighting using server-side timestamps from whisper.cpp
- Sentence-aware narration that merges across pages/chapters for smoother playback
- Optimized Next.js TTS proxy with caching for faster repeat playback
- Customizable themes, TTS settings, and document handling
Start Here
- Docker Quick Start
- Local Development
- Environment Variables
- Auth
- SQL Database
- Object / Blob Storage
- TTS Providers
Source Repository
- GitHub: richardr1126/OpenReader-WebUI