Highlights
- File naming with room to work: A new two-column workbench puts each folder on its own line, previews resolved paths against realistic book names, and shows exactly how missing metadata changes the result.
- Approve and download books from your phone (iOS): Book Requests now brings the full workflow to your phone: scan an ISBN, submit or join a request, and follow its progress. Approvers can work through a dedicated queue, approve requests, compare release scores and contents, choose a download, and resolve imports, all directly in the app.
- Enhanced CarPlay experience (iOS): Continue listening to downloaded or streamed audiobooks, see progress within the current chapter, and control chapters and playback speed from your car. Smoother library browsing and reliable Read Along handoffs keep listening uninterrupted.
- A Notebook for every book and your library (iOS): Gather highlights, notes, bookmarks, reviews, and a reading journal in one place, with stars, named colors, search, daily review, On this day, and Recently Deleted. This server release adds the sync and library-wide Notebook support.
- Your reading history as a timeline (iOS): Follow sessions from every device by day, see milestones and highlights in context, revisit past reading positions, and open Listening History from the audiobook player.
- Enhanced book uploads (iOS): A redesigned upload experience lets you review book covers and metadata, confirm destination libraries, and track batch progress. Add formats to existing books, upload from the share sheet, or drag and drop files on iPad.
- Smoother ebook reading (iOS): Pages slide under your finger, streamed books prefetch neighboring chapters, and chapter transitions continue in one motion. Choose side taps, one-handed taps, or swipe-only navigation, and show the page turns remaining in the chapter.
- More control over Read Along (iOS): Choose whether narration autoplays, use Voice Boost for steadier speech volume, and keep narration positions aligned across devices. Native KEPUB reading preserves shared EPUB positions for highlights and bookmarks.
- Tune PDFs and comics over the page (iOS): Compact tune bars adjust layout, zoom, page appearance, and comic turns without covering the document. Comics gain sliding page turns and next-issue continuation; recently opened streamed PDFs reopen faster.
- Precise Kobo and KOReader sync: Native KEPUB books now exchange progress, bookmarks, and highlights with Kobo. KOReader keeps exact reading positions and recognizes books delivered through Kobo conversion or audio removal.
Features
- library: auto-select sole upload destinations (e767358) by @neonsolstice, closes #1362
- settings: redesign file naming as a two-column workbench (4701412) by @neonsolstice
Bug Fixes
- books: honour the metadata score sort when series are collapsed (f8c8ecf) by @neonsolstice, closes #1638
- books: retain records when content deletion fails (2dddf9b) by @neonsolstice, closes bookorbit/bookorbit-ios-support#42
- client: constrain request title column width (ef2bcce) by @neonsolstice, closes #1613
- kobo: preserve koreader matching for converted downloads (5875656) by @neonsolstice, closes #1697
- kobo: sync native kepub progress and canonical positions (1abf2f5) by @neonsolstice, closes bookorbit/bookorbit-ios-support#36
- library: include saved settings in scoped library summaries (df926fd) by @neonsolstice, closes #1664
- library: refuse renames into a folder another book holds (4ca7128) by @neonsolstice, closes #1682
- opds: expose public collections to other users (019c432) by @neonsolstice, closes #1701
- reader: fall back to the declared narration length for read-along EPUBs (068a62b) by @neonsolstice, closes #1619
- reader: keep oversized comic pages within scroll bounds (85927fb) by @neonsolstice, closes #1610
- reader: persist audiobook progress on insecure origins (951f3b7) by @neonsolstice, closes #1608
- reader: preserve exact positions when syncing with koreader (#1694) (e253f7f) by @neonsolstice, closes #1621 #1288
- settings: add optional dashboard shelf sync (cb8d1e3) by @neonsolstice, closes #1646
- stats: invalidate reading caches after committed changes (e6ea5bd) by @neonsolstice, closes #1695
Internationalization
Security
- deps: patch container dependency vulnerabilities (324059e) by @neonsolstice
- deps: upgrade busboy to fix multipart denial of service (8fecae9) by @neonsolstice
Docker
docker pull ghcr.io/bookorbit/bookorbit:3.3.0Multi-arch: linux/amd64 and linux/arm64.