一款仅本地运行的日记应用,配备严谨的加密保护。 免费、开源,绝不联网。
mini-diarium.com · 下载 · 文档 · 功能特性 · 理念 · 性能基准
Mini Diarium 免费、开源,并将永远如此。如果你觉得它有用,并想支持它的开发,可以考虑在 Ko-fi 上请我喝杯咖啡。每一笔捐赠都会直接用于维持项目存续并推动改进。
更偏好加密货币?门罗币、比特币和闪电网络地址见下方及 DONATE.md。
门罗币(XMR),标准主网地址:
4ApNmqczyAoWsprSrCMsPNKTGhxaH1Cs6agLVaGiKuBBVSotWK9uj3oVQkWYUX9XUGQJyC9WB7cMofE8wfp5BbUoEdcwbjv
比特币(BTC),链上原生 SegWit(bech32):
bc1q0y6v888ala2f8r7tm8g30vqt9ma09w9ww4jhum
通过闪电网络支付的比特币,一个兼容 Cake Wallet、Phoenix、Zeus、Blink 和 Wallet of Satoshi 的闪电网络地址:
发送前请务必对照 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 的精神继承者。我很喜欢原来的那个工具。它简单、私密,完全做到了日记应用该做的事。遗憾的是,它已经多年无人维护,依赖项也早已老化过时。我最初考虑过 fork 它并现代化技术栈,但后来发现这并不现实。于是我从零开始重写,在保留相同核心理念(加密、仅本地、专注)的同时,用 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。
面向用户的重点:
你可以使用日记 plugins/ 文件夹中的 Rhai 脚本添加本地导入/导出扩展。
有关要求、最佳实践以及完整的示例插件,请参阅 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.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+, |