You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Neural Voice (Supertonic 3, desktop) — Full offline fp32 neural TTS. The fp32 ONNX models, voice styles, and the ONNX Runtime dylib (~400MB) are downloaded on first use from the supertonic-assets GitHub releases with SHA-256 verification — nothing ships in the app. Rust inference via ort (load-dynamic) with sentence-aware chunking, a 1GB content-hash WAV cache, and next-chunk prefetch. Ten voices (F1–M5), 31 languages, speed control. Playback runs through native Rust audio (rodio/cpal) with real pause/resume/seek. Managed in Settings → General → Neural Voice.
Companion Audiobooks — Attach a DRM-free .m4b/.m4a/.mp3 to any book from its context menu; the reader's immersion mode upgrades into a human-narrated player (scrubber over the real duration, ±15s skips, speed chips, chapter menu, sleep timer, lock-screen media controls, synced playback position). Chapters, duration and cover are parsed natively in Rust (including a QuickTime chapter-track walker for M4B).
Save as Audiobook (desktop) — Generate a complete audiobook from an open book with the neural voice: one click narrates every section and encodes a single Ogg Opus file (~16MB/hour at 36kbps mono) with chapter marks, then attaches it to the book. Background task with progress and cancel.
Headless CLI & TUI — theorem <command> gives agents and terminals full app parity: library, shelves, search, read, dict, extract, annotations, bookmarks, RSS, OPDS, sync, storage, stats, export, and open. JSON output (--json) for scripting, TTY-aware colored output with the THEOREM logo, and an interactive ratatui TUI (theorem tui). Enable/disable from Settings → General with startup auto-heal.
Native Memory-Mapped StarDict & MDict Engine — Native Rust StarDict and MDict .mdx parsers with memmap2, decompressing 64KB zlib blocks on demand with sub-millisecond lookup latency (<0.5ms) and instant offline fallback.
Android TTS engine selection — Enumerate and switch system TTS engines from Settings (fixing silent engine-switch failures), with real word-boundary events for the immersion reader and synthesizeToFile support. Neural narration on Android uses the installable Theorem Neural Voice companion engine app.
Build stamp — Settings → About shows the git hash and source commit date the binary was built from, making a stale locally built release binary visible at a glance.
Improved
Organization migration to Fundaments-Work — Migrated all external repository links, releases, Supertonic asset downloads, StarDict dictionaries, and companion engine APKs to fundaments-work.
Desktop launcher resolution — Prevented debug or unbundled binaries from shadowing the standalone production AppImage on desktop.
P2P sync — Remote doc entries are batched into single IPC events for faster sync; deletion tombstones older than 90 days are pruned at startup.
Reader immersion player — Replaced the estimated completion timer with real audio playback when the neural voice is installed; Android pause/resume now resumes from the engine's actual word position.
Desktop neural narration streaming — Playback position and seek now span the entire streamed page; queue underruns while later chunks synthesize no longer stall playback or jump the scrubber; the next page's first chunks are synthesized in the background while the current page reads.
Fixed
MOBI text extraction — Added native HUFF/CDIC (Huffman) decompression for compression-type-2 MOBI files, and corrected the PalmDOC LZ77 distance layout (11-bit, was misread as 9-bit) so compressed MOBI books extract clean text instead of garbled fragments. Books that mislabel themselves as compression 2 without HUFF/CDIC records fall back to PalmDOC decoding.