
New releaseAug 26, 2026
A local-only journal with serious encryption. Free, open source, and never touches the internet.
A local-only journal with serious encryption. Free, open source, and never touches the internet.
mini-diarium.com · Download · Documentation · Features · Philosophy · Benchmarks

Mini Diarium is free, open source, and will always be. If you find it useful and want to support its development, consider buying me a coffee on Ko-fi. Every donation goes directly toward keeping this project alive and improving.
Prefer crypto? Monero, Bitcoin, and Lightning are below and in DONATE.md.
Monero (XMR), standard mainnet address:
4ApNmqczyAoWsprSrCMsPNKTGhxaH1Cs6agLVaGiKuBBVSotWK9uj3oVQkWYUX9XUGQJyC9WB7cMofE8wfp5BbUoEdcwbjv
Bitcoin (BTC), on-chain native SegWit (bech32):
bc1q0y6v888ala2f8r7tm8g30vqt9ma09w9ww4jhum
Bitcoin over Lightning, a Lightning address that works with Cake Wallet, Phoenix, Zeus, Blink, and Wallet of Satoshi:
Always verify addresses against DONATE.md on master before sending. That file also covers network warnings and what donations do and do not buy.
Download the latest release for your platform from GitHub Releases.
Requires Windows 10 (1809)+, macOS 10.15 Catalina+, or Linux (Ubuntu 20.04+, Fedora 36+, Arch, or equivalent).
Quick install:
winget install fjrevoredo.MiniDiariumbrew tap fjrevoredo/mini-diarium then brew install --cask mini-diariumflatpak install flathub io.github.fjrevoredo.mini-diariumnix run github:fjrevoredo/mini-diariumFor package formats, first-run notes (Gatekeeper / SmartScreen), and checksum verification, see docs/INSTALLATION.md.
Ctrl+[ / Ctrl+] or click dates on the calendarMini Diarium is a spiritual successor to Mini Diary by Samuel Meuli. I loved the original tool. It was simple, private, and did exactly what a journal app should do. Unfortunately, it's been unmaintained for years and its dependencies have aged out. I initially thought about forking it and modernizing the stack, but turned out impractical. So I started over from scratch, keeping the same core philosophy (encrypted, local-only, focused) while rebuilding completely with Tauri 2, SolidJS, and Rust. The result is a lighter, faster app with stronger encryption and a few personal touches.
Mini Diarium is intentionally opinionated. The philosophy is not a side note, it is the product:
Read the full principles and how these translates to the architecture in PHILOSOPHY.md.
[!NOTE] Mini Diarium uses AI tooling as leverage for human engineers, never as a replacement. Every change still passes through deliberate design, careful implementation, proper testing, and direct feedback. Responsibility, authorship, and final judgment remain human.
For the diagrams and detailed data flows, see docs/ARCHITECTURE.md.
| Action | Shortcut |
|---|---|
| Previous Day | Ctrl+[ |
| Next Day | Ctrl+] |
| Go to Today | Ctrl+T |
| Go to Date | Ctrl+G |
| Previous Month | Ctrl+Shift+[ |
| Next Month | Ctrl+Shift+] |
| Preferences | Ctrl+, |
Statistics, Import, and Export are available via the Journal menu (no default keyboard accelerators).
On macOS, use Cmd instead of Ctrl.
Prerequisites: Rust (see rust-toolchain.toml), Bun 1.x, and Tauri v2 system dependencies.
For detailed platform-specific instructions (Linux package names, Fedora setup, Wayland troubleshooting), see CONTRIBUTING.md.
git clone https://github.com/fjrevoredo/mini-diarium.git
cd mini-diarium
bun install
bun run tauri build
Artifacts will be in target/release/bundle/ (the Cargo workspace root owns target/).
x25519-dalek, hkdf, sha2: X25519 ECIES key wrapping for key file authenticationFor the full list of known limitations, deliberate tradeoffs, and technical debt, see docs/KNOWN_ISSUES.md.
User-facing highlights:
You can add local import/export extensions using Rhai scripts in your journal's plugins/ folder.
See docs/user-plugins/USER_PLUGIN_GUIDE.md for requirements, best practices, and a complete example plugin.
Criterion benchmarks for the crypto and database hot paths are tracked on every push to master and published at fjrevoredo.github.io/mini-diarium/benchmarks/.
The page covers four areas: Argon2id key derivation (intentionally slow — ~200 ms to resist brute-force), AES-256-GCM encrypt/decrypt at three entry sizes, SQLite operations (insert, update, delete, date enumeration, full scan), and word-count calculation. Each card shows the latest timing and a Chart.js trend chart over the last 30 CI runs.
See CONTRIBUTING.md for setup instructions, development workflow, and conventions. For maintainers adding official plugins, see docs/BUILTIN_PLUGIN_GUIDE.md. For maintainers changing frontend UI/state, the Rust backend, Tauri IPC boundary, WebView security, or CI, see docs/best-practices.
Mini Diarium ships in the following languages:
If you'd like to add support for another language, see docs/TRANSLATIONS.md for instructions on creating a locale file and submitting a PR.
For maintainers: See docs/RELEASING.md for step-by-step release instructions.
See SECURITY.md for the security model and how to report vulnerabilities.
Mini Diarium is licensed under the MIT License. See LICENSE.
Made with love by Francisco J. Revoredo (with a little help from Claude Code).
Thanks to everyone who has contributed code, translations, or improvements to Mini Diarium: