paviro/Notema
GitHub: paviro/Notema
一款基于终端的 Rust Markdown 日记应用,以纯文本存储并支持端到端加密与多设备同步。
Stars: 41 | Forks: 3
Notema 間
一款基于终端的 Markdown 日记应用,支持可选的端到端加密和多设备同步。
**Notema** (/noʊˈtɛ.mɑː/) 将 *note*(笔记)与日本的“間”(*ma*,即空间、间隔)概念结合在一起—— 它是事物之间的停顿、间隔或空间,既体现在时间上,也体现在页面上。同步功能通过 你已经在使用的文件同步工具(例如 Syncthing、Nextcloud 或 Dropbox)来完成。 日记条目是带有 TOML front-matter 的纯 markdown 文件,在磁盘上按日期组织。 没有任何内容被锁定在专有格式中——你的日记只是一个包含 `.md` 文件(或开启加密后的 `.md.age` 文件)的文件夹。它可以在任何 Rust 运行的地方运行,包括通过 Termux 运行的 Android,并且在浅色、深色以及 单色/电子墨水屏终端上都能保持清晰可读。 ## 功能 - **TUI** —— 三窗格浏览器(日记 / 条目 / 阅读器),支持鼠标和 键盘(方向键 + vim 按键)导航、实时渲染 markdown、终端内 图像渲染以及条目元数据。 - **模糊搜索** —— 跨整个语料库进行搜索,包括元数据。 - **主题** —— TOML 主题文件,带有扁平或带边框的界面外观、深色/浅色变体、 实时预览选择器,以及编辑时的热重载功能。 - **每个条目的丰富元数据** —— 标签、人物、活动、感受、心情分数 (-5…+5) 以及位置。带有位置的条目还会记录该地点和时间的天气、空气质量 以及日/月数据。 - **内置编辑器** —— 在带有 markdown 语法高亮的全屏编辑器中编写和编辑条目。 - **Day One 导入**,包含照片和元数据。 - **端到端加密** —— 每个设备独立的 [age](https://age-encryption.org) 密钥、 已签名的设备列表以及新设备的审批流程。私钥永远不会 离开设备。 - **解密 FUSE 挂载** —— 将加密日记作为可写的、已解密的 文件系统进行浏览。 ## 安装 从 [发布页面](https://github.com/paviro/notema/releases) 下载适合你平台的二进制文件,或者从源码构建 — 参见 [`docs/BUILDING.md`](docs/BUILDING.md)。 ## 快速开始 ``` notema # launch the full TUI (walks through setup on first run) notema log "Had a good day" # quick entry from the command line notema log # compose an entry in the fullscreen editor ``` Notema 没有自己的服务器——你可以将日记保留在一台机器上,或者使用你喜欢的任何 文件同步工具同步其文件夹,它就会出现在你的所有设备上。开启 加密后,该同步文件夹仅包含密文和公钥;每个 设备的独立私钥均保留在本地,因此无论谁来托管同步,都只能 看到密文,而无法读取你的日记条目。 ## 文档 - [使用说明](docs/USAGE.md) —— 包含元数据的记录、位置捕获、Day One 导入 - [移动端 (iOS / Android)](docs/MOBILE.md) —— 在 iSH 和 Termux 下运行、同步设置 - [加密](docs/ENCRYPTION.md) —— 设置、添加设备、密钥管理 - [挂载 (FUSE)](docs/FUSE.md) —— 将加密日记作为文件系统浏览 - [存储格式](docs/STORAGE-FORMAT.md) —— 磁盘布局、front-matter、配置、恢复 - [主题](docs/THEMES.md) —— 内置主题库 - [主题参考](docs/THEME-REFERENCE.md) —— 主题文件格式与完整 token 参考 - [构建](docs/BUILDING.md) —— 从源码构建、交叉编译、FUSE 构建 - [架构](docs/ARCHITECTURE.md) —— crate 布局和依赖规则 - [开发](docs/DEVELOPMENT.md) —— 检查、交叉构建、运行基准测试 ## 许可证 参见 [`LICENCE`](LICENCE) (EUPL v1.2)。 ## 鸣谢 - **天气和空气质量数据**来自 [Open-Meteo](https://open-meteo.com),基于 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 许可。 - **位置地理编码** —— © [OpenStreetMap](https://www.openstreetmap.org/copyright) 贡献者,通过 [Nominatim](https://nominatim.org) 提供,基于 [ODbL](https://opendatacommons.org/licenses/odbl/) 许可。 运行 `notema licenses` 可打印这些致谢信息,以及每个 第三方 Rust 依赖的完整许可证文本。 ## 免责声明 本项目为个人使用而构建,并在很大程度上依赖于 AI 生成的代码。虽然我已经 测试了所有功能并且每天在使用,但我对您可能遇到的任何问题 概不负责。使用风险由您自行承担。
标签:Markdown, Python安全, Rust, TUI, 可视化界面, 日记, 端到端加密, 笔记软件, 终端应用, 网络流量审计, 通知系统