每个 Caliu 应用都把你的笔记保存在 SQLite 里。这是一个小巧而坚固的数据库引擎,早已运行在你拥有的每一部手机、每一个浏览器和每一台电脑里。服务器同样使用 SQLite。处处都是同一个引擎,意味着一条笔记在每台设备上的结构完全相同,在转换中不会丢失任何东西。
在你的设备上
| 应用 | 笔记的存储位置 |
|---|---|
| 网页 | 编译为 WebAssembly 的 SQLite,保存在浏览器的本地存储(IndexedDB)中 |
| iPhone、iPad 和 Mac | 设备上的 SQLite 数据库,通过 GRDB 访问 |
| Apple Watch | 它自己的 SQLite 数据库,因此手机不在身边时也能使用 |
| Android | 设备上的 SQLite 数据库 |
在 iPhone、iPad 和 Mac 上,小组件和分享扩展读取的是和应用相同的数据库文件,所以你分享到 Caliu 的笔记会立刻出现在应用里,即使处于离线状态。
搜索同样在你的设备上运行。它查找的是本地数据库,所以瞬间出结果,没有网络也能用。
底层格式是 Markdown
每条笔记都以纯 Markdown 文本存储。其余的一切都是从这段文本中读出来的:
- 标签来自你写下的
#hashtags。 - 笔记之间的链接来自你写下的
[[note links]]。
因为文本就是唯一的事实来源,笔记的任何部分都不会藏在某种隐蔽的格式里。导出一条笔记,你就拿到了全部。
在服务器上
登录之后,你的笔记也会保存在 Caliu 的服务器上:
- 笔记和标签存放在 Cloudflare D1 中,也就是运行在 Cloudflare 数据中心里的 SQLite。
- 你附加的图片和文件存放在 Cloudflare R2 中,这是一项文件存储服务。如果你在离线时粘贴图片,它会先保存在设备上,等你重新联网后在后台上传。
与服务器之间的每一个连接都经过加密。这对你的隐私意味着什么,请看《隐私与你的数据》一文。
Mac 上的纯文件
Mac 应用还可以把你的笔记保存为所选文件夹中的纯 Markdown 文件,每条笔记一个文件。用任何应用编辑它们,改动都会回流到 Caliu 和你的其他设备。设置方法请看《Mac 上的本地文件》一文。
笔记何时真正消失
已删除的笔记会在废纸篓中保留 30 天,之后服务器会将其彻底删除,并告知每台设备照做。已归档的笔记永远不会被自动删除。