夜雨聆风学习资料网

ARTICLE · 1250510

我 600 本书,散在五个 App 里,一本都带不走

我 600 本书,散在五个 App 里,一本都带不走

"一款适合在自己电脑上阅读的软件

书是你买的,书架从来不是你的

第一次意识到这件事,是在 Kindle 中国区关店那天。

我在那个账号里买了大概两百本书。有的是半夜冲动下的单,有的是在通勤路上读完的,还有几本只翻了前三页,就一直躺在「最近阅读」里。

关店公告写得很客气:已购的书还能下载,但有个截止日期。

那天我第一次认真想一个问题——这些书,到底在谁手里。

答案是:一直不在我手里。

本文看点

01

一个阅读器,认得 29 种扩展名

02

28,623 个 star,六年半没停过

03

书根本不经过它的服务器

01

FIVE APPS

我的书散在五个地方

后来我认真数了一遍。

Kindle 里两百多本。微信读书里一百多本,都是在早高峰的地铁上看的。多看阅读里存着一批早年的 TXT 和精排版。硬盘里是散装的 PDF——论文、说明书、扫描版旧书。剩下的是网盘里三个以「待整理」命名的文件夹,从 2019 年放到现在。

五个地方,五套账号,五种排版引擎,五种笔记格式。

每换一台设备,就要重新搬一次家。更麻烦的是,永远搬不干净。

Kindle 的高亮锁在 Kindle 里,微信读书的想法锁在微信读书里,多看的批注——多看还在不在都难说。书是同一本书,笔记却各过各的。

还有格式。azw3、mobi、cbz、caj、djvu、ofd,每一样都要装一个对应的软件。为了看一个知网下载的 caj,我装过 CAJViewer;为了看一本扫描的 djvu,又装过 WinDjView。

那几年我的电脑里,光是「阅读器」就有六个。

02

WHAT IT IS

把散书收进一个抽屉

Koodo Reader,2020 年 3 月开源,作者署名 Troye,协议是 AGPL-3.0。

它对自己的介绍只有一句话:一个跨平台的电子书管理器和阅读器。Windows、macOS、Linux、Android、iOS、网页版,六个平台都有。

技术上没什么玄学。外壳是 Electron 35,界面是 React 18 加 TypeScript,书库存在本地的一个 SQLite 文件里。

请注意最后这半句——书库存在本地的一个文件里。

这句话看着平淡,但它决定了后面所有事。

— star / fork / 贡献者 / 提交数取自 GitHub 仓库元数据接口,提交数为默认分支提交数

它不是那种「打开就能读」的轻应用。第一次启动是空的,你得把文件拖进去,它一本一本地解析封面、目录、章节。六百本书,进度条走了十几分钟。

走完之后,你得到的是一个能被搜索、能被排序、能被导出的书库,而不是一堆躺在文件夹里、靠文件名认人的文件。

03

29 EXTENSIONS

它认得那些「打不开」的文件

我把 README 的格式清单数了一遍:29 个扩展名。

EPUB、PDF、MOBI、AZW3、AZW、TXT、FB2、CHM 是基本盘。真正让我意外的是后面这几类。

漫画

cbz、cbr、cbt、cb7,四种压缩包格式全收,直接当书翻

办公文档

docx、doc、pptx、ppt、rtf、md,连 PPT 都能当书看

老格式

djvu、djv、xps、oxps、ofd,还有惠普时代的 chm 帮助文档

国内特有

caj,知网论文的格式,导入时自动转成 PDF

最后这一条值得单独说。做过论文的人都知道,为了一个 caj 文件装一个国产阅读器,是这十几年的固定动作。现在这个动作可以省了。

— 格式清单与 caj 转换说明见仓库 README;DRM 支持范围以其「DRM-free」表述为准

但有一条边界必须说清楚:它只读没有 DRM 的书。

README 里的措辞是 DRM-free Mobipocket。也就是说,你在 Kindle 商店买的、带加密的 azw,它打不开;那种「买了只是借你看」的书,它也打不开。

这不是能力问题,是法律问题。绕过 DRM 在多数国家违法,一个 AGPL 项目不会去碰这条线。

所以它管的,是你自己真正拥有的那些文件:无 DRM 的电子书、公共版权的公版书、自己扫的书、论文、漫画。

04

TWO CHANNELS

书走你的盘,痕迹可以走它的云

大部分阅读 App 的同步逻辑是这样的:书先传到我的服务器,你再从我的服务器拉下来。

Koodo 把这件事故意拆成了两半。

书和封面,走你自己添加的数据源。 OneDrive、Google Drive、Dropbox、iCloud、MEGA、pCloud、Box、Yandex Disk,国内的阿里云盘、百度网盘、115 网盘,再加上 FTP、SFTP、SMB、WebDAV、对象存储,甚至自己用 Docker 部署一份。这一段完全不经过它的服务器。

进度、笔记、高亮、书签,可以走它的云。 这是 Pro 版的功能。官方说明写得很直白:这些数据加密后存在它的云端,而书的文件与封面仍然走你自己加的数据源,这项功能随时可以在设置里关掉。

所以它没有假装自己「什么都没有」。它做的是把边界划清楚:书归你,痕迹可以托管。

— 依据仓库中文语言包 zh-CN.json 中关于云同步与专业版的说明,以及 README 的数据源清单

这个划分其实挺聪明。书是重资产,几百本几个 G,托管成本高、版权风险也高;笔记和进度是轻数据,几十 KB,同步又快又稳。

而且它留了退路。Pro 不续,关掉云同步,数据还在本地;真要搬家,一键导出全部图书,一键导出全部笔记。

后面这串接口也挺极客:它能和 KOReader 互通进度;笔记和高亮能推到 Readwise、Notion、Obsidian、Joplin;生词自动同步到 Anki 和欧路词典;支持 OPDS 协议,把整个书库当成订阅源发出去;还有个浏览器扩展,能把网页文章剪藏进书库。

05

135 RELEASES

六年半,135 个版本

我把仓库的元数据拉下来看了一遍。以下数字截至 2026 年 10 月 25 日:

2.8 万 star,2,142 次 fork,43 位贡献者,约 3,390 次提交,最新版本 v2.4.6。

六年半,从 0 到 2.8 万 star,中间没有融资新闻,也没有发布会。我拉数据的时候,最近一次提交是当天上午。

版本节奏更能说明问题。GitHub Releases 里能查到 135 个版本,最早一条是 2024 年 3 月的 v1.0.1。从那天到 v2.4.6,一共 949 天——平均七天发一个版本。

— 版本号与发布日期取自 GitHub Releases(共 135 条),区间为 2024-03-02 至 2026-10-07,共 949 天

AGPL-3.0 这个协议值得停一下。

它比 GPL 更狠一条:不仅分发软件要开源,把它做成网络服务对外提供,也要开源。 换句话说,谁想拿这套代码搭一个收费的网页版然后闭源,是违规的。

对一个讲「数据主权」的项目来说,这个协议不是形式主义——它是承诺的可执行版本。

06

THE PRICE

免费的代价在哪

得说实话。

第一,界面是工具,不是消费品。 没有推荐流,没有书单广场,没有「猜你喜欢」。打开是书架,关掉还是书架。想要那种被照顾的感觉,这里给不了。

第二,同步要自己配。 网盘授权、WebDAV 地址、SMB 路径,第一次配置大概要二十分钟,而且 Windows 和 macOS 的路径写法还不一样。配好之后确实一劳永逸,但这一步劝退过不少人。

第三,有一部分功能在 Pro 后面。 免费版能读完一整本书,也能靠网盘同步书库;云同步这类高级功能要付费,年费订阅,7 天试用,一次购买全平台通用。

第四,中文资料不算多。 官方文档有中文版,但社区讨论主要在 GitHub Issues 和 Discord,遇到冷门问题得自己啃代码。

换来的是另一头:一键导出全部图书(带原始文件),一键导出全部笔记(CSV、Markdown、HTML、TXT、PDF 五种格式),还有书库快照和版本控制——哪天手滑删了书,能回滚。

这几条加起来,其实就是三个字:带得走。

∞

LEAVE

搬家那天

我把五个地方的书凑到一起,大概六百本。

拖进窗口,等进度条走完。书架出来了,封面有的自动抽出来了,有的是空白——epub 里自带封面的就有,扫描的 PDF 就没有。

然后我做了两件事。

第一件,把书库文件夹设成同步。第二件,把笔记全导成 Markdown,扔进我自己的笔记软件。

整个过程没什么仪式感。但那天晚上我确实踏实了一点。

书还是那些书,字还是那些字。区别只有一个:这次它们在我的 D 盘里,不在任何一家公司的账号里。

六年前有人写下第一行代码的时候,大概也没想到,会有两万八千人和他想的是同一件事。

REFERENCE

GitHub 仓库 koodo-reader/koodo-reader:README、README_cn.md、package.json、Releases 与仓库元数据,2026-10-25 读取

仓库内客户端中文语言包 src/assets/locales/zh-CN.json,用于核对专业版与云同步的官方表述

Koodo Reader 官方站点与帮助文档 koodoreader.com(功能说明、插件列表、Docker 部署教程)

GNU Affero General Public License v3.0 全文,gnu.org/licenses/agpl-3.0

Pexels License(配图授权说明),pexels.com/license

END

相关学习资料