一款仅本地运行、具备强加密的日记应用。 免费、开源,且永不联网。
mini-diarium.com · 下载 · 文档 · 功能 · 设计理念 · 性能基准
Mini Diarium 是免费、开源的,并且将永远如此。如果你觉得它有用并想支持其开发,可以考虑在 Ko-fi 上请我喝杯咖啡。每一笔捐赠都将直接用于维持这个项目的生命并推动其改进。
更喜欢加密货币?Monero、Bitcoin 和 Lightning 的捐赠方式见下方及 DONATE.md。
Monero (XMR),标准主网地址:
4ApNmqczyAoWsprSrCMsPNKTGhxaH1Cs6agLVaGiKuBBVSotWK9uj3oVQkWYUX9XUGQJyC9WB7cMofE8wfp5BbUoEdcwbjv
Bitcoin (BTC),链上原生 SegWit(bech32):
bc1q0y6v888ala2f8r7tm8g30vqt9ma09w9ww4jhum
Bitcoin over Lightning,一个适用于 Cake Wallet、Phoenix、Zeus、Blink 和 Wallet of Satoshi 的 Lightning 地址:
发送前请务必对照 master 分支上的 DONATE.md 核实地址。该文件还包含网络警告以及捐赠的用途与不用途说明。
从 GitHub Releases 下载适用于你平台的最新版本。
需要 Windows 10 (1809)+、macOS 10.15 Catalina+ 或 Linux(Ubuntu 20.04+、Fedora 36+、Arch 或同等发行版)。
快速安装:
winget install fjrevoredo.MiniDiariumbrew tap fjrevoredo/mini-diarium 然后执行 brew install --cask mini-diariumflatpak install flathub io.github.fjrevoredo.mini-diariumnix run github:fjrevoredo/mini-diarium有关软件包格式、首次运行说明(Gatekeeper / SmartScreen)以及校验和验证,请参阅 docs/INSTALLATION.md。
Ctrl+[ / Ctrl+] 在日期之间切换,或点击日历上的日期Mini Diarium 是 Samuel Meuli 所著 Mini Diary 的精神继承者。我非常喜欢原版工具。它简单、私密,并且完全做到了日记应用该做的事。遗憾的是,它已多年无人维护,其依赖也已过时。我最初考虑将其分叉并现代化技术栈,但发现并不可行。因此我从零开始重建,在保持相同核心理念(加密、仅本地、专注)的同时,使用 Tauri 2、SolidJS 和 Rust 完全重写。最终成果是一款更轻量、更快速、加密更强并带有一些个性化设计的应用。
Mini Diarium 刻意带有鲜明的设计主张。理念并非附属说明,它就是产品本身:
完整原则及其如何落实到架构中,请阅读 PHILOSOPHY.md。
[!NOTE] Mini Diarium 将 AI 工具作为人类工程师的助力,而非替代品。每一项变更仍需经过深思熟虑的设计、严谨的实现、充分的测试和直接的反馈。责任、作者身份和最终判断始终归于人类。
有关图表和详细数据流,请参阅 docs/ARCHITECTURE.md。
统计、导入和导出可通过“日记”菜单访问(无默认键盘加速键)。
在 macOS 上,请使用 Cmd 代替 Ctrl。
前置要求: Rust(参见 rust-toolchain.toml)、Bun 1.x 以及 Tauri v2 系统依赖。
有关详细的平台特定说明(Linux 软件包名称、Fedora 设置、Wayland 故障排查),请参阅 CONTRIBUTING.md。
git clone https://github.com/fjrevoredo/mini-diarium.git
cd mini-diarium
bun install
bun run tauri build
构建产物将位于 target/release/bundle/(Cargo 工作区根目录拥有 target/)。
x25519-dalek、hkdf、sha2:用于密钥文件认证的 X25519 ECIES 密钥包装有关已知限制、刻意权衡和技术债务的完整列表,请参阅 docs/KNOWN_ISSUES.md。
面向用户的主要问题:
你可以使用 Rhai 脚本在日记的 plugins/ 文件夹中添加本地导入/导出扩展。
有关要求、最佳实践和完整示例插件,请参阅 docs/user-plugins/USER_PLUGIN_GUIDE.md。
针对加密和数据库热路径的 Criterion 基准测试会在每次推送到 master 时运行,并发布在 fjrevoredo.github.io/mini-diarium/benchmarks/。
该页面涵盖四个方面:Argon2id 密钥派生(刻意缓慢——约 200 毫秒以抵抗暴力破解)、三种条目大小下的 AES-256-GCM 加密/解密、SQLite 操作(插入、更新、删除、日期枚举、全表扫描)以及字数统计。每张卡片显示最新耗时,并附有最近 30 次 CI 运行的 Chart.js 趋势图。
有关设置说明、开发流程和约定,请参阅 CONTRIBUTING.md。 维护者如需添加官方插件,请参阅 docs/BUILTIN_PLUGIN_GUIDE.md。 维护者如需更改前端 UI/状态、Rust 后端、Tauri IPC 边界、WebView 安全或 CI,请参阅 docs/best-practices。
Mini Diarium 支持以下语言:
如果你想添加对其他语言的支持,请参阅 docs/TRANSLATIONS.md,了解如何创建语言文件并提交 PR。
面向维护者:有关分步发布说明,请参阅 docs/releasing/RELEASING.md。
有关安全模型及如何报告漏洞,请参阅 SECURITY.md。
Mini Diarium 采用 MIT 许可证授权。参见 LICENSE。
由 Francisco J. Revoredo 倾心打造(并得到 Claude Code 的一点帮助)。
感谢所有为 Mini Diarium 贡献代码、翻译或改进的人:
| 操作 | 快捷键 |
|---|
| 前一天 | Ctrl+[ |
| 后一天 | Ctrl+] |
| 跳转到今天 | Ctrl+T |
| 跳转到日期 | Ctrl+G |
| 上个月 | Ctrl+Shift+[ |
| 下个月 | Ctrl+Shift+] |
| 偏好设置 | Ctrl+, |