bookorbit

应用程序

bookorbit/bookorbit

自托管电子书与有声书阅读平台。

项目简介

BookOrbit 可整理个人书库,并通过网页阅读器支持电子书、PDF、漫画和有声书,进度可在 Kobo 与 KOReader 间同步。内置元数据增强、OPDS 推送、多用户与 OIDC 登录,支持 Docker 部署。

README 预览

\n\n# BookOrbit\n\nA self-hosted library and reading platform for ebooks, PDFs, audiobooks, and comics.\n\n[](https://github.com/bookorbit/bookorbit/releases)\n[](https://github.com/bookorbit/bookorbit/stargazers)\n[](https://github.com/bookorbit/bookorbit/actions/workflows/ci.yml)\n[](https://github.com/bookorbit/bookorbit/actions/workflows/release.yml)\n[](https://codecov.io/gh/bookorbit/bookorbit)\n[](https://crowdin.com/project/bookorbit)\n\n[](https://bookorbit.app)\n[](https://demo.bookorbit.app/magic?token=2d92cb900e184cf0eb8b11f72cffc6011673d1016e1b300d750eb3d76abc1572)\n[](https://github.com/bookorbit/bookorbit/pkgs/container/bookorbit)\n[](https://github.com/bookorbit/bookorbit/blob/main/docs/CONTRIBUTING.md)\n[](LICENSE)\n\n\n\n\n\n---\n\n## What is BookOrbit?\n\n**[BookOrbit](https://bookorbit.app)** organizes your books and reads them back to you anywhere: the web reader, a Kobo, or KOReader. Progress, highlights, and reading status move between all three, so you can start a chapter in one place and finish it in another.\n\nAround that core sit 14 metadata providers, reading statistics and achievements, OPDS and Send-to-Kindle delivery, multi-user accounts with OIDC/SSO, and automatic sync out to Hardcover, Readwise, and StoryGraph. All of it runs on infrastructure you control.\n\n[](https://bookorbit.app)\n\n## Live Demo\n\nTry the live instance before you install. No account required.\n\n[](https://demo.bookorbit.app/magic?token=2d92cb900e184cf0eb8b11f72cffc6011673d1016e1b300d750eb3d76abc1572)\n\n> **Note:** The demo includes a sample library of public domain books. Some administrative features are limited in the public demo. Self-hosting BookOrbit provides the full experience.\n\n## Features\n\n### Reading Experience & Sync\n\n- **Built-in Web Readers**: Ebooks (EPUB, KEPUB, MOBI, AZW3, AZW, FB2), PDFs, comics (CBZ, CBR, CB7), and audiobooks (M4B, MP3, M4A, OPUS, OGG, FLAC), with no extra plugins required.\n- **Three-Way Sync (Kobo + KOReader + BookO

常见问题 (5)

故障排除
为什么在 BookOrbit 移动端横屏并使用 Page Width 适配模式时,无法滚动到漫画页面的顶部?

这是 BookOrbit 3.1.0 中的一个 bug,会影响横屏模式下使用 "Page Width" 适配模式时的移动端漫画阅读器。该问题已在 BookOrbit 3.3.0 中修复。请将您的 Docker 部署升级到 3.3.0 或更高版本,然后重新创建容器。作为临时解决方案,可以使用竖屏方向或选择其他页面适配模式。

来源 Issue #1610
故障排除
为什么安装 BookOrbit 插件后,Bookshelf 标签页会从 KOReader 文件浏览器的菜单栏中消失?

BookOrbit 的 bookorbit_menu_pin.lua 会在每次启动时,用 KOReader 内置菜单顺序的完整副本重写 settings/reader_menu_order.lua 和 settings/filemanager_menu_order.lua。KOReader 的 MenuSorter:mergeAndSort 会整体替换每个列表而不是进行合并,因此其他插件随后添加的标签页(例如 bookshelf_tab)会被丢弃。禁用 BookOrbit 的菜单图标或删除该文件都无济于事,因为它会在每次启动时重新生成。解决方法:1) 在文本编辑器中打开 koreader/settings/filemanager_menu_order.lua。2) 删除第一行(-- bookorbit-menu-pin v3 (generated; ...)),使 BookOrbit 停止重新生成该文件。3) 在 ["KOMenu:menu_buttons"] 列表中,在 "filemanager_settings" 之后紧接着添加 "bookshelf_tab",。4) 重启 KOReader —— Bookshelf 标签页将重新出现。

来源 Issue #1878
故障排除
如何修复 BookOrbit 有声书进度在 Web 应用或 iOS 应用刷新后无法恢复的问题?

这是 BookOrbit 3.1.0 中的一个 bug:有声书进度虽已被记录,但在重新打开播放器或同步到 iOS 应用时并未被使用。该问题已在 BookOrbit 3.3.0 中修复。请将您的 Docker 部署升级到 3.3.0,例如:docker compose pull bookorbit && docker compose up -d。如果使用的是普通 Docker 容器,请拉取 3.3.0 镜像并重新创建容器。升级后,开始播放,退出播放器,然后重新打开有声书,以验证播放是否从保存的位置继续。

来源 Issue #1608
故障排除
如何修复通过 Book Dock 导入第二本书后,BookOrbit 图书消失并显示为重复缺失条目的问题?

此问题发生在 BookOrbit v3.1.0 中:当书库使用 **Folder as Book**(文件夹即书籍)模式并采用**扁平文件命名规则**时,如果多个导入的 EPUB 落在同一目录(例如书库根目录),BookOrbit 会将第二次导入关联到第一本书的数据库记录。之后的书库扫描会将物理文件分开,恢复第一本书,并为第二本书留下一个重复的“missing”(缺失)条目。元数据的修改也可能丢失,因为扫描会从原始文件刷新元数据。

解决方法:
1. 前往 **Settings > Library**(设置 > 书库),编辑 Folder-as-Book 命名规则,使每本书都有独立的子目录。添加一个路径分隔符,例如:
{title}/<{title}|{originalFilename}> - <{authors:first}> - <{year}>
2. 对于已经导入到书库根目录的书籍,将每个书籍文件移动到它自己的文件夹中。
3. 运行 **Settings > Library > Scan**(设置 > 书库 > 扫描)。
4. 删除那个幽灵般的“missing”重复条目,并重新应用所有丢失的元数据更改。

或者,如果希望将书籍保存在扁平目录中,可以将书库配置为 **File as Book**(文件即书籍),而不是 Folder as Book。

来源 Issue #1599
故障排除
为什么 BookOrbit 网页版 EPUB 阅读器在 v3.4.0 中每次按键都会跳过两页?

这是 v3.4.0(Docker latest)中的一个已知 bug:在 'Pages' 阅读流程下,单次 ArrowRight keydown(或点击翻页)会使书籍前进约 0.3%,即大约两个屏幕页面,无论视口宽度或分栏布局如何都是如此。临时解决方法:将阅读器的 'Reading flow' 设置从 'Pages' 切换为 'Scroll',即可恢复正常导航。该 bug 普遍影响 EPUB 文件(已使用 Standard Ebooks 构建版本复现),出现在 Windows/Chrome 平台上,与按键重复或双栏跨页无关。

来源 Issue #1814