openreader/README.md
Richard R 9b9206f50d refactor(audiobooks): migrate audiobook pipeline to object storage
This commit restructures the audiobook generation and serving layer to rely exclusively on S3-compatible blob storage, removing the dependency on local filesystem paths.

- Bundle `ffmpeg` and `ffprobe` binaries via npm to ensure portability across environments.
- Update API routes to stream audio directly from blob storage instead of local disk.
- Remove legacy migration endpoints and filesystem-based indexing logic.
- Add startup scripts to facilitate the transition from local to remote storage.

BREAKING CHANGE: Audiobook functionality is now strictly dependent on S3 configuration. The previous filesystem-based storage method has been removed.
2026-02-11 02:44:34 -07:00

49 lines
3.4 KiB
Markdown

[![GitHub Release](https://img.shields.io/github/v/release/richardr1126/OpenReader-WebUI)](https://github.com/richardr1126/OpenReader-WebUI/releases)
[![License](https://img.shields.io/github/license/richardr1126/OpenReader-WebUI)](LICENSE)
[![Docs](https://img.shields.io/badge/docs-openreader--webui-0a6c74)](https://docs.openreader.richardr.dev/)
[![Playwright Tests](https://github.com/richardr1126/OpenReader-WebUI/actions/workflows/playwright.yml/badge.svg)](https://github.com/richardr1126/OpenReader-WebUI/actions/workflows/playwright.yml)
[![Docs Check](https://github.com/richardr1126/OpenReader-WebUI/actions/workflows/docs-check.yml/badge.svg)](https://github.com/richardr1126/OpenReader-WebUI/actions/workflows/docs-check.yml)
[![GitHub Stars](https://img.shields.io/github/stars/richardr1126/OpenReader-WebUI)](https://github.com/richardr1126/OpenReader-WebUI/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/richardr1126/OpenReader-WebUI)](https://github.com/richardr1126/OpenReader-WebUI/network/members)
[![Discussions](https://img.shields.io/badge/Discussions-Ask%20a%20Question-blue)](https://github.com/richardr1126/OpenReader-WebUI/discussions)
# 📄🔊 OpenReader WebUI
OpenReader WebUI is an open source, self-host-friendly text-to-speech document reader built with Next.js for **EPUB, PDF, TXT, MD, and DOCX** with synchronized read-along playback.
> **Get started in the [docs](https://docs.openreader.richardr.dev/)**.
## ✨ Highlights
- 🎯 **Multi-provider TTS** with OpenAI-compatible endpoints (OpenAI, DeepInfra, Kokoro, Orpheus, custom).
- 📖 **Read-along playback** for PDF/EPUB with sentence-aware narration.
- ⏱️ **Word-by-word highlighting** via optional `whisper.cpp` timestamps.
- 🛜 **Sync + library import** to bring docs across devices and from server-mounted folders.
- 🗂️ **Flexible storage** with embedded SeaweedFS or external S3-compatible backends.
- 🎧 **Audiobook export** in `m4b`/`mp3` with resumable chapter processing.
- 🐳 **Self-host friendly** with Docker, optional auth, and automatic startup migrations.
## 🚀 Start Here
| Goal | Link |
| --- | --- |
| Run with Docker | [Docker Quick Start](https://docs.openreader.richardr.dev/getting-started/docker-quick-start) |
| Deploy on Vercel | [Vercel Deployment](https://docs.openreader.richardr.dev/getting-started/vercel-deployment) |
| Develop locally | [Local Development](https://docs.openreader.richardr.dev/getting-started/local-development) |
| Configure auth | [Auth](https://docs.openreader.richardr.dev/guides/configuration) |
| Configure SQL database | [Database and Migrations](https://docs.openreader.richardr.dev/operations/database-and-migrations) |
| Configure object storage | [Object / Blob Storage](https://docs.openreader.richardr.dev/guides/storage-and-blob-behavior) |
| Configure TTS providers | [TTS Providers](https://docs.openreader.richardr.dev/guides/tts-providers) |
| Run Kokoro locally | [Kokoro-FastAPI](https://docs.openreader.richardr.dev/integrations/kokoro-fastapi) |
| Get support or contribute | [Support and Contributing](https://docs.openreader.richardr.dev/community/support) |
## 🧭 Community
- Questions and ideas: [GitHub Discussions](https://github.com/richardr1126/OpenReader-WebUI/discussions)
- Bug reports: [GitHub Issues](https://github.com/richardr1126/OpenReader-WebUI/issues)
- Contributions: open a pull request
## 📜 License
MIT. See [LICENSE](LICENSE).