Mood Cairns
Private, fully offline mood tracker. No network access. Your data's yours..
新版本 1.0.4
* Fix issue #1 - 'Immediate' auto-lock setting triggering on dialogs causing lock loop.
* Switch to passphrase for future encrypted backups (8-char minimum).
* Throttle PIN verification on change and on backup export.
* Re-wrap DB key on PIN change to prevent database lockout.
* Switch to passphrase for future encrypted backups (8-char minimum).
* Throttle PIN verification on change and on backup export.
* Re-wrap DB key on PIN change to prevent database lockout.
A private, fully offline Android mood tracker. Log how you're feeling against your own scales, in your own time windows, on your own device. Nothing is ever uploaded - sync, if you want it, is your job (Syncthing works well on the encrypted backup folder).
Features
* Custom scales. Five built-in scales (Happiness, Anxiety, Stress, Boredom, Pain), each numeric and color-tagged. Add your own; archive the ones you don't want.
* Prompt windows. Define time-of-day windows (e.g. morning 08:00-12:00, evening 18:00-20:00). The app fires one notification per window per day at a randomized time inside it. Tap the notification to jump straight to the log entry screen.
* History and charts. Browse past entries, see per-scale trends over time.
* Encrypted on-disk storage. The mood database is encrypted at rest using SQLCipher. The key lives in memory only while the app is unlocked, and is wiped when you lock it.
* PIN + biometric lock. PIN-gated app entry, with optional biometric unlock. PIN is hashed with PBKDF2-HMAC-SHA256 (600k iterations) before being stored.
* Encrypted backups. Manual export writes an AES-GCM-encrypted JSON file to Documents/MoodCairns/. The encryption key is derived from your PIN with PBKDF2-HMAC-SHA256 (200k iterations) and a fresh per-backup salt embedded in the envelope, so any install (including a fresh one) can decrypt with the same PIN.
* Home-screen widget for one-tap mood logging.
Privacy contract
The app declares no network permissions. Without internet, the process literally cannot open a socket, which makes phone-home impossible regardless of what any included library tries to do.
The build enforces this, so a network permission can never be silently introduced by a dependency update.
If you want backups synced off-device, point Syncthing (or any file manager that can sync a folder) at Documents/MoodCairns/.
Source
Fully open source under GPL-3.0-only. Built on Kotlin, Jetpack Compose, Room, SQLCipher, and AndroidX.
Features
* Custom scales. Five built-in scales (Happiness, Anxiety, Stress, Boredom, Pain), each numeric and color-tagged. Add your own; archive the ones you don't want.
* Prompt windows. Define time-of-day windows (e.g. morning 08:00-12:00, evening 18:00-20:00). The app fires one notification per window per day at a randomized time inside it. Tap the notification to jump straight to the log entry screen.
* History and charts. Browse past entries, see per-scale trends over time.
* Encrypted on-disk storage. The mood database is encrypted at rest using SQLCipher. The key lives in memory only while the app is unlocked, and is wiped when you lock it.
* PIN + biometric lock. PIN-gated app entry, with optional biometric unlock. PIN is hashed with PBKDF2-HMAC-SHA256 (600k iterations) before being stored.
* Encrypted backups. Manual export writes an AES-GCM-encrypted JSON file to Documents/MoodCairns/. The encryption key is derived from your PIN with PBKDF2-HMAC-SHA256 (200k iterations) and a fresh per-backup salt embedded in the envelope, so any install (including a fresh one) can decrypt with the same PIN.
* Home-screen widget for one-tap mood logging.
Privacy contract
The app declares no network permissions. Without internet, the process literally cannot open a socket, which makes phone-home impossible regardless of what any included library tries to do.
The build enforces this, so a network permission can never be silently introduced by a dependency update.
If you want backups synced off-device, point Syncthing (or any file manager that can sync a folder) at Documents/MoodCairns/.
Source
Fully open source under GPL-3.0-only. Built on Kotlin, Jetpack Compose, Room, SQLCipher, and AndroidX.
- 作者: lcdcode
- 许可: GNU General Public License v3.0 only
- 问题跟踪系统
- 源代码
- 构建元数据
- 可重复性状态
版本
尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。
下载 F-Droid-
arm64-v8aarmeabi-v7ax86x86_64该版本需要 Android 10 及以上版本。
此包由原始开发者构建并签名,并保证对应于此源代码 tarball。
-
arm64-v8aarmeabi-v7ax86x86_64该版本需要 Android 10 及以上版本。
此包由原始开发者构建并签名,并保证对应于此源代码 tarball。
新版本 1.0.3
v1.0.3
* Stop embedding git commit metadata (version-control-info.textproto) in the
release APK so F-Droid reproducible builds are not tied to the build host's
git checkout state.
* Stop embedding git commit metadata (version-control-info.textproto) in the
release APK so F-Droid reproducible builds are not tied to the build host's
git checkout state.




