

Anx Calibre Manager:打造现代化的个人电子书管理中心
-
Anx Calibre Manager:打造现代化的个人电子书管理中心
在数字阅读日益普及的今天,如何高效、便捷地管理自己日益增长的电子书库,成为了许多阅读爱好者面临的共同挑战。传统的电子书管理软件 Calibre 功能强大,但在移动端体验和现代化 Web 访问方面略显不足。为了解决这一痛点,开源项目 Anx Calibre Manager 应运而生。它是一个现代化的、移动端优先的 Web 应用,旨在为你提供一个集书籍管理、在线阅读、多设备同步和 AI 交互于一体的终极解决方案。
本文将全面介绍 Anx Calibre Manager 的核心功能、部署方法和高级用法,帮助你了解它如何革新你的数字阅读体验。
✨ 核心功能:不止于书库管理
Anx Calibre Manager 不仅仅是 Calibre 的一个 Web 前端,它集成了一系列强大而创新的功能,旨在满足现代读者的多样化需求。
1. 现代化与移动端优先的用户体验
- 移动端优先界面: 专为手机优化,界面简洁、响应迅速,让你随时随地都能轻松管理书库。
- PWA 支持: 可作为渐进式 Web 应用 (PWA) 安装到你的手机或桌面,提供接近原生应用的流畅体验,无需通过浏览器地址栏访问。
- 多语言支持: 内置完整的国际化方案,支持简体中文、繁体中文、英语、西班牙语、法语和德语,满足全球用户的需求。
2. 强大的阅读与消费功能
- 浏览器内阅读器: 无需下载,直接在浏览器中打开并预览 EPUB 格式的电子书。阅读器还内置了文本转语音(TTS)功能,可以为你朗读书籍内容。
- KOReader 同步: 对于使用 Kobo、Kindle 等电纸书设备并安装了 KOReader 的用户,此功能是一大福音。你可以将阅读进度和阅读时长无缝同步到 Anx Calibre Manager,实现跨设备阅读体验的统一。
- 智能推送到 Kindle: 发送书籍到你的 Kindle 设备从未如此简单。应用会自动处理格式转换:如果书籍已有 EPUB 格式,则直接发送;如果没有,它会根据你的偏好,自动将最佳可用格式转换为 EPUB 后再发送,确保最佳的兼容性和阅读体验。
- 集成的 WebDAV 服务器: 每个用户都会获得一个独立的个人 WebDAV 文件夹。这不仅方便了与 Anx-reader 等兼容设备的同步,也为其他支持 WebDAV 的应用(如某些笔记软件或阅读器)提供了接入书库的通道。
3. 创新的 AI 与有声书功能
- 与 AI 对话: 这是 Anx Calibre Manager 最具前瞻性的功能之一。你可以与书库中的任何一本书进行“聊天”,向 AI 提问关于书籍内容的问题、获取章节摘要,或是探讨书中深层次的主题。这为知识探索和内容回顾提供了全新的维度。
- 有声书生成与播报: 你可以将任何 EPUB 电子书转换为带章节标记的 M4B 有声书。该功能利用可配置的文本转语音(TTS)服务(如 Microsoft Edge TTS 或 OpenAI TTS)实现。生成的 M4B 文件与 Audiobookshelf 等专业有声书服务器完全兼容。
- 在线有声书播放器: 生成的有声书可以直接在 Web 界面中播放,你的收听进度会被自动保存和同步,方便你在不同设备间切换。
4. 完善的管理与协作机制
- Calibre 深度集成: 应用通过连接到你现有的 Calibre 内容服务器来浏览、搜索和管理书籍,充分利用了 Calibre 强大的后端能力。
- 精细的用户管理: 内置多角色用户系统(管理员、维护者、普通用户),满足个人使用或家庭、小团队共享书库的需求。
- 仅限邀请注册: 默认开启邀请码注册机制,管理员可以生成邀请码来控制新用户加入,有效防止未经授权的访问,保障书库安全。
- 用户可编辑上传书籍: 普通用户可以编辑自己上传书籍的元数据。此功能通过在 Calibre 中添加一个名为
#library
的自定义列来实现,系统会自动记录上传者,并授予其编辑权限。
5. 个性化与数据洞察
- 阅读统计: 系统会自动为每位用户生成个人阅读统计页面,包含精美的年度阅读热力图、在读书籍和已读书籍列表。该页面可以设置为公开分享或保持私有。
🚀 如何部署 Anx Calibre Manager
该应用被设计为通过 Docker 进行部署,过程非常简单。
先决条件:
- 你的服务器上已安装 Docker 和 Docker Compose。
- 一个正在运行的 Calibre 服务器(推荐使用
linuxserver/calibre
Docker 镜像)。虽然可选,但大部分核心功能都依赖它。
快速开始 (使用
docker run
)这是最简单的入门方法,只需一条命令即可启动。
1.创建用于持久化存储配置和 WebDAV 文件的目录:
mkdir -p ./config mkdir -p ./webdav
2.运行 Docker 容器:
docker run -d \ --name anx-calibre-manager \ -p 5000:5000 \ -v $(pwd)/config:/config \ -v $(pwd)/webdav:/webdav \ --restart unless-stopped \ ghcr.io/ptbsare/anx-calibre-manager:latest
3.启动后,在浏览器中访问
http://<你的服务器IP>:5000
。第一个注册的用户将自动成为管理员。之后,你可以在网页的设置界面中配置 Calibre 服务器连接等信息。高级配置 (使用
docker-compose.yml
)对于需要进行更多自定义配置的用户,推荐使用
docker-compose
。# Docker Compose 文件版本,建议使用 '3.8' 或更高版本 version: '3.8' # 定义所有服务 services: # Anx Calibre Manager 服务 anx-calibre-manager: # 使用官方指定的 Docker 镜像 image: ghcr.io/ptbsare/anx-calibre-manager:latest container_name: anx-calibre-manager ports: # 将主机的 5000 端口映射到容器的 5000 端口 # 如果主机 5000 端口被占用,可以修改前面的数字,例如 "5001:5000" - "5000:5000" volumes: # 挂载配置文件目录,用于持久化存储数据库和设置 - ./anx-config:/config # 挂载 WebDAV 数据目录,用于存储用户的 WebDAV 文件 - ./webdav:/webdav # (可选) 挂载有声书目录,用于存放生成的 M4B 有声书文件 - ./audiobooks:/audiobooks # (可选) 挂载字体目录,用于解决书籍转换时的字体问题 (例如中文) # 您需要将自己的字体文件 (如 .ttf, .otf) 放入本地的 ./fonts 文件夹 - ./fonts:/opt/share/fonts environment: # --- 基础设置 --- # 设置运行应用的用户和组ID,避免权限问题 # 在 Linux/macOS 上运行 `id -u` 和 `id -g` 获取 - PUID=1000 - PGID=1000 # 设置时区,请根据您所在位置修改,例如 "Asia/Shanghai" - TZ=Asia/Shanghai # (必填) 设置一个长且随机的安全密钥,用于会话安全 - SECRET_KEY=your_super_secret_key_please_change_this # --- Calibre 连接设置 --- # 使用 Docker 内部网络连接到 calibre-server 服务 # 'calibre-server' 是下面定义的服务名 - CALIBRE_URL=http://calibre-server:8080 # 设置 Calibre 用户名,必须与下面 calibre-server 服务中设置的相同 - CALIBRE_USERNAME=your_calibre_username # 请修改 # 设置 Calibre 密码,必须与下面 calibre-server 服务中设置的相同 - CALIBRE_PASSWORD=your_calibre_password # 请修改 # Calibre 默认书库ID。通常是 'Calibre_Library' 或 'Calibre_书库' # 您可以在 Calibre 网页界面确认 - CALIBRE_DEFAULT_LIBRARY_ID=Calibre_Library - CALIBRE_ADD_DUPLICATES=false # 设置为 true 时,新用户注册需要邀请码 - REQUIRE_INVITE_CODE=true restart: unless-stopped # 确保 calibre-server 服务先于此服务启动 depends_on: - calibre-server # Calibre 内容服务器服务 calibre-server: # 使用 linuxserver.io 提供的 Calibre 镜像 image: lscr.io/linuxserver/calibre:latest container_name: calibre-server ports: # Calibre 内容服务器端口 (用于 Anx 连接) - "8080:8080" # Calibre 网页管理界面端口 (用于您管理书库) - "8081:8081" volumes: # 挂载 Calibre 的配置目录 - ./calibre-config:/config # 挂载 Calibre 的书库目录,您的所有电子书将存放在这里 - ./calibre-library:/books environment: # 同样设置 PUID, PGID 和 TZ,保持与上面一致 - PUID=1000 - PGID=1000 - TZ=Asia/Shanghai # 请修改 # --- Calibre 内容服务器用户凭证 --- # 设置用于内容服务器的用户名和密码 # Anx Calibre Manager 将使用这些凭证来访问 Calibre - CALIBRE_USERNAME=your_calibre_username # 请修改,并与上面保持一致 - CALIBRE_PASSWORD=your_calibre_password # 请修改,并与上面保持一致 restart: unless-stopped
自定义字体
如果在转换包含特殊字符(如中文)的书籍时遇到字体缺失的问题,你可以将包含所需字体文件(如
.ttf
,.otf
)的本地目录挂载到容器的/opt/share/fonts
路径,以解决此问题。🔧 常见问题排查 (FAQ)
- 为什么我看不到 Calibre 书库里的书?
- A: 请确保你启动的是 Calibre 的内容服务 (Content Server),而非
calibre-web
。内容服务通常运行在8080
端口。 - B: 检查在 Anx 设置中填写的 Calibre URL、用户名和密码是否正确。
- A: 请确保你启动的是 Calibre 的内容服务 (Content Server),而非
- 为什么上传/编辑书籍时提示 401 Unauthorized?
- A: 你在 Anx 中配置的 Calibre 用户需要有写入权限。请在 Calibre 桌面端 -> “首选项” -> “通过网络共享” -> “用户账户”中为该用户勾选写入权限。
- 如何找到我的
library_id
?- A: 在浏览器中访问你的 Calibre 内容服务,书库名称旁边显示的通常就是书库 ID(空格会被替换为下划线)。例如,“Calibre 书库”的 ID 通常是
Calibre_书库
。
- A: 在浏览器中访问你的 Calibre 内容服务,书库名称旁边显示的通常就是书库 ID(空格会被替换为下划线)。例如,“Calibre 书库”的 ID 通常是
- 编辑已读日期或上传书籍时出现 400 Bad Request 错误?
- A: 这是因为你的 Calibre 书库缺少必要的自定义列。请在 Calibre 桌面端添加以下两个自定义列并重启 Calibre 服务器:
#library
(查找名称), 类型为文本,逗号分隔
#readdate
(查找名称), 类型为日期
- A: 这是因为你的 Calibre 书库缺少必要的自定义列。请在 Calibre 桌面端添加以下两个自定义列并重启 Calibre 服务器:
🤖 MCP 服务器:与你的书库智能交互
Anx Calibre Manager 内置了一个符合规范的 MCP (Model Context Protocol) 服务器,允许 AI 代理或外部工具通过 API 与你的书库进行安全的交互。
用户可以在设置页面生成 API 令牌,然后通过向
http://<你的服务地址>/mcp?token=YOUR_TOKEN
端点发送 JSON-RPC 2.0 请求来调用各种工具。你可以向支持工具调用的 AI 代理发出这样的自然语言指令:
“查找关于Python编程的书籍。”
“最近添加的5本书是哪些?把第一本发送到我的Kindle。”
“为《三体》这本书生成有声书。”
“《沙丘》这本书我读到哪里了?”
“总结一下《基地》第一章的内容。”
这为自动化工作流和实现更高级的智能交互打开了想象空间。
Github地址:https://github.com/ptbsare/anx-calibre-manager
总结
Anx Calibre Manager 不仅仅是一个 Calibre 的现代化皮肤,它是一个功能强大、设计前沿的个人数字阅读中心。通过整合移动优先的 UI、PWA、AI 对话、有声书生成、多设备同步等一系列创新功能,它极大地扩展了 Calibre 的能力边界。Anx Calibre Manager 作为不容错过的开源利器,可以将你的本地书库转变为一个随时随地可访问、功能丰富的云端阅读平台。
歡迎留言回复交流。
Log in to reply.