该项目是一个自托管的电子书库,支持在Cloudflare Worker或Node服务器上运行,无需数据库。它提供搜索、下载和浏览器阅读功能,支持EPUB和PDF格式。
正文
好的,这是根据您的要求,对原文主要内容进行的中文重述,保留了关键细节,并删减了与核心主题无关的安装命令和文档链接等细节。
项目名称: Bookshelf
核心功能: 一个自托管的电子书库,用于管理您已拥有的电子书。它提供一个服务端渲染的页面,用于展示、搜索、下载和在线阅读 EPUB 和 PDF 格式的电子书。
技术架构: - 支持两种部署方式: 1. Cloudflare Workers:使用 R2 对象存储。 2. Node 服务器:使用本地磁盘目录。 - 无需数据库:所有数据(包括阅读进度和用户配置)都存储在存储层中。
主要特点: - 自托管:您完全掌控自己的数据。 - 内置阅读器:为 EPUB 和 PDF 分别提供专用的浏览器内阅读器。 - 搜索与筛选:通过搜索框快速查找书籍。 - 用户配置:支持多用户配置(Profile),用于区分不同读者的阅读进度,但不提供身份验证,任何知道地址的人都能访问整个书库。 - 只读模式:可设置为只读模式,防止外部用户修改书库或阅读进度。
部署方式: 1. Docker:最快捷的方式,镜像自带生成封面的工具。 2. 本地机器:无需任何外部账户,通过配置文件指定目录即可。 3. Cloudflare:需要 Cloudflare 账户,利用 R2 存储和 Workers 运行。
演示功能: 项目内置 npm run demo 命令,可自动生成一批公有领域的电子书(含封面),方便用户快速体验和截图。
重要提示: - 无身份验证:这是项目明确指出的未完成功能,因此建议仅在受信任的网络中部署,或在其前方添加认证层。 - 并发问题:同一配置下,两个设备同时阅读时,最后写入的进度会覆盖之前的。
许可协议: 项目代码采用 MIT 许可。
评论
根据评论内容,总结如下:
主要观点与论据:
自托管电子书库方案多样:用户philips推荐使用copyparty(单二进制文件,支持OPDS和WebDAV),强调扁平文件和多种协议的便利性。引用:"I really like the convenience of flat files and multiple protocols." 用户davkan推荐Grimmory,支持OPDS、Kobo API和Kindle邮件。引用:"Opds, kobo api, kindle email and web reader cover pretty much every use case."
Bookshelf项目引发讨论:作者murerkinn解释Bookshelf旨在最小化基础设施,支持Cloudflare Workers和R2免费层,未来计划改进阅读器UI和增加离线阅读。引用:"The main goal has always been to keep the infrastructure as minimal as possible while still giving you a library you fully control." 用户phildenhoff好奇为何只支持对象存储,质疑是否为周末项目。引用:"what possesses someone to make an ebook library that only works on object storage?"
安全与法律风险关注:用户bordercontrol强调客户端端到端加密的必要性,指出未加密托管电子书可能触犯版权法。引用:"Client side end to end encryption is a must have for me when hosting anything nowadays." 并警告:"An accidentally public S3 bucket full of ebooks could technically land you in jail in certain jurisdictions."
其他工具推荐:用户BloodyIron推荐audiobookshelf(支持播客、有声书和电子书)。引用:"I use it for podcasts, audio books, & ebooks. It's great!" 用户seymon推荐Calibre-Web Automated。用户robbiet480推荐Bookorbit,称其功能强大。引用:"I recently got Bookorbit running and its quite powerful for being so young."
功能需求与问题:用户netfortius询问跨平台阅读进度和笔记同步方案。用户utopiah建议Bookshelf支持OPDS协议。用户nairboon询问实体书管理工具,推荐Robinson。
平衡性总结:评论呈现了自托管电子书库的多种方案(copyparty、Bookshelf、Grimmory、audiobookshelf等),既有对扁平文件、对象存储等不同架构的偏好,也有对安全加密、法律风险的警示。Bookshelf作为新兴项目,其对象存储专一性引发好奇,但作者已承诺扩展存储选项。整体讨论聚焦于功能、易用性和合规性之间的权衡。