All notable changes to this project will be documented in this file. The format is based on Keep a Changelog.
- Multi-process TTS worker pool (default 3 workers) for better GPU utilization and throughput.
- Forward generation cursor (
generation_start_index) to keep audio generation aligned with user jumps.
- Priority/progress updates now advance the generation cursor and re-queue work from the new position.
- Word highlighting in the reader is more stable (timestamp normalization + anti-flicker matching).
- Idle TTS worker shutdown on pause to free GPU memory when no generation is active.
- Resume now correctly re-queues paused books.
- Word highlight stability improved (active chunk signature gating + smarter word mapping).
- Universal, device-agnostic, and PyPI-ready release. No local shortcuts, fully open source.
- Robust GPU support on Windows with automatic DLL patching for CUDA/cuDNN.
- Improved device selection logic with automatic fallback to CPU.
- Persisted TOC extraction and TOC-to-chunk navigation (no more TOC 404 after upload processing).
- Book status + progress Server-Sent Events stream to avoid polling.
- Delete-book endpoint that cleans DB + generated assets.
- Typed/settings schema with server-side validation.
- In-book search endpoint + UI integration.
- Reader keyboard shortcuts + focus mode + shortcuts overlay.
- Centralized runtime data directory configuration via
EBOOKBOT_DATA_DIR. - Improved backend error responses (adds structured
errorfield).