Releases: sampathmannam/nilamind
Release list
v1.11.0 — AI Quality + UX Overhaul
NilaMind v1.11.0 — The biggest update yet
What's new
AI Quality Overhaul (18 improvements)
The on-device AI companion is now significantly smarter, warmer, and faster:
- Therapeutic prompt — DBT, CBT, ACT, and Motivational Interviewing patterns baked in
- Emotional intelligence — 9-state emotion detection with per-turn emotional priming
- Response cleaner — removes robotic phrases, helpdesk register, therapist clichés
- Personal RAG — retrieves what helped before, recent mood, check-in patterns, assessments
- Conversation memory — keyword-based retrieval of past conversations across sessions
- Topic tracking — 12 theme clusters (work stress, anxiety, relationships, etc.)
- RAG warmth guidance — teaches the model how to use data naturally
- 5 therapeutic protocols — structured grounding, mood check-in, wind-down, strengths, connection
Edge AI Optimizations (speed + quality)
- KV cache q4_0 — 44% less memory (350MB → 200MB)
- n_predict 96 — 25% faster responses
- top_k 30 — tighter beam for more coherent replies
- DRY 1.0 — stronger repetition prevention
- n_batch 1024 — faster prompt processing
- Context 4096 — 7x more conversation space
- System prompt 200 tokens — 3.6x faster prefill
Data Collection Fixes
- Auto social rhythm — wake/bed times from phone usage (no Health Connect needed)
- Proactive assessments — ASRM on elevation, PHQ-9 on inflection, WHO-5 on cadence
- Sleep in check-in — 5 quick-tap sleep chips (Under 5h → Over 8h)
- Shame inference — auto-detected from emotion labels for pattern insights
- Medication reminders — one-tap logging from notification, synced on startup
UX Overhaul (10 phases complete)
- MoodHeatmap — Year in Pixels showing daily mood intensity
- TrendChart — Assessment scores with severity bands
- PhaseTimeline — Episode phase visualization
- InsightCard — Pattern cards with sparklines
- Adaptive home screen — hero gradient shifts with time of day
- Achievements — 10 achievements with streak milestones + confetti
- NilaCharacter — SVG illustrations with 6 emotional states
- EmptyState — warm illustrations for 12 screens
- BreathingScreen — immersive full-screen breathing with haptic feedback
- Ambient sounds — white/brown/pink/green noise via Web Audio API
Retention Mechanics
- Contextual weekly digest — personalized notification with check-in count + streak
- Proactive insight notification — weekly pattern insight
- Smart daily nudge — 8 signal types (sleep, inflection, elevation, disengagement)
- Achievement wiring — all 10 achievements now unlock on real actions
World-Class Notifications
- 5 Android channels (gentle/medication/reply/ema/crisis)
- Inline action buttons (Snooze 1h/3h, Check in, Taken/Remind 30m)
- EMA grouping + wind-down sync
- One-tap medication logging
Architecture Cleanup
- 100+ i18n keys wired into toolsRows.ts
- CSS cleanup — removed unused classes, fixed .animate-fade-in
- Dead wiring fixed — values_work → values_to_action redirect
- Dead exports removed (missedDays, regionIsExplicit, measureAsync/measureSync, etc.)
Technical
- 2551 tests passing
- tsc clean, guard green
- On-device only — nothing leaves your phone
Install
- Download the APK below and install on Android 8+ (API 26+)
- Or use Obtainium to auto-update
v1.10.2 — Data Collection & UX Overhaul
NilaMind v1.10.2
What's new
Immersive Breathing Experience
- Full-screen breathing with phase-aware ambient gradient (blue inhale → amber hold → emerald exhale)
- Animated circle that expands/contracts with your breath
- Haptic feedback on each phase transition
- 5-minute session target with celebration
- 4 patterns: Cyclic sighing, Box, 4-7-8, Resonance
- Quick-access card on Today tab
Ambient Sounds
- White, brown, pink, green noise generated on-device via Web Audio API
- No audio files, no network calls — privacy-first
- Volume control + auto-stop timer (15/30/60 min)
- Available in Tools tab
Emotional Onboarding
- 7-slide guided journey with Nila character introduction
- Mood baseline assessment (5 emoji selectors)
- Personalization pills (Sleep, Mood, Grounding, Medications, Talking)
- Confetti celebration + first achievement on completion
Custom Illustrations
- NilaCharacter — abstract, warm, glowing orb with 6 emotional states
- 12 empty state illustrations with contextual hints
- Replaces emoji with branded SVG illustrations
Data Collection Fixes
- Auto social rhythm: Wake/bed times auto-detected from phone usage (no Health Connect needed)
- Proactive assessments: ASRM suggested on elevation signals, PHQ-9 on inflection, WHO-5 on 14-day cadence
- Sleep first-class: Sleep chips (Under 5h / 5-6h / 7-8h / Over 8h / Not sure) added to check-in flow
- Shame inference: Shame auto-detected from check-in emotion labels for pattern insights
- Medication reminders: One-tap 'Taken' logging from notification, reminders synced on app open
Empty States
- NilaCharacter illustrations across all empty screens
- Warm companion voice CTAs
Technical
- 2551 tests passing
- tsc clean, guard green
- On-device only — nothing leaves your phone
Install
- Download the APK below and install on Android 8+ (API 26+)
- Or use Obtainium to auto-update
v1.10.0 — UX Overhaul
NilaMind v1.10.0 — UX Overhaul
What's new
This is a major visual and experiential upgrade. Every screen has been touched.
🎨 Data Visualization
- Year in Pixels — mood heatmap showing daily intensity over 6 months
- Assessment Trend Charts — PHQ-9/GAD-7/WHO-5 with severity bands
- Episode Phase Timeline — horizontal bar showing elevated/depressed/mixed/stable periods
- Insight Cards — pattern cards with sparklines, trend indicators, and citations
🏠 Adaptive Home Screen
- Time-aware hero gradient — shifts from amber (morning) → blue (afternoon) → purple (evening) → indigo (night)
- Contextual mood summary — "You've been feeling steady this week"
- Welcome back card — warm message when returning after absence
- Nila's voice greeting — companion personality that adapts to your state
🏆 Gamification
- 10 achievements — first check-in, 7-day streak, 30-day streak, first episode, safety plan, caregiver added, wellbeing check, tool used, 10/100 check-ins
- Streak milestones — progress bar toward next milestone (3/7/14/30/100 days)
- Celebration animations — confetti burst + haptic feedback on milestones
💬 Nila's Voice
- 17 voice scenarios — greeting, mood (low/moderate/good/high distress), sleep (short/good), streak milestone, returning after absence, crisis, episode, tool suggestion, check-in prompt, wind-down, morning/evening
- 40+ warm templates — companion personality that adapts to your context
🎯 Empty States
- Warm illustrations for 12 screens — no more blank walls
- Companion voice CTAs — "Your story starts here" instead of "No data"
✨ Micro-Interactions
- Haptic feedback — light/medium/heavy/success/warning/error/celebration on every meaningful interaction
- Confetti burst — particle celebration on streak milestones
- Spring animations — elastic button presses, pulse glows, slide-up entrances
🎨 Design System (already built)
- Warm taupe-gray color palette
- Lora serif + Inter sans font pairing
- Light/Dark/System theme with Sensory Comfort mode
- Glass morphism with backdrop blur
- Aurora background animation
- prefers-reduced-motion + accessibility support
📊 Notifications (Phase 20)
- 5 Android notification channels with per-type importance
- Inline action buttons: Snooze 1h/3h, Check in/Not now, Taken/Remind 30m
- Signal-adaptive copy (5 types: sleep, inflection, lapse, streak, milestone)
- Wind-down sync, EMA grouping, progressive cooldown
🔧 Technical
- 2552 tests passing
- tsc clean, guard green
- On-device only — nothing leaves your phone
Install
- Download the APK below and install on Android 8+ (API 26+)
- Or use Obtainium to auto-update from this release
v1.9.12 — Quick check-in + onboarding UI fixes
NilaMind v1.9.12
A bug-fix release addressing two UI issues in the Quick check-in and first-run onboarding.
Fixes
- Quick check-in: the "Done" button was pushed off-screen on the note step (so the check-in couldn't be completed), and tapping it didn't close the sheet. Both fixed — Done is now visible and saving returns you to Today.
- Onboarding "Next" button: was near-invisible in the light (Sunrise) theme — white text on a light-beige fill (1.41:1 contrast). Now a readable lavender fill (5.04:1, clears WCAG AA).
- Onboarding top bar: the "Need help now" crisis pill no longer collides with the phone's status bar (added safe-area-inset padding).
Install
- Download the APK below and install on Android 8+ (API 26+).
- Or use Obtainium — add
https://github.com/sampathmannam/nilamindand it will auto-update from this release.
Signed with the same release key as prior versions (cert SHA-256 003f02bc…), so it updates in place over v1.9.11.
v1.9.11 — Magenta orb + refined loading
NilaMind v1.9.11
What's new
- Phase 17: Longitudinal wellbeing tracking (WHO-5 fortnightly trend)
- Phase 18: Episode-phase markers (bipolar course tracker)
- Phase 19: Family/caregiver mode (consent-gated contact sharing + auto-alert)
- Phase 20: World-class notification system (5 Android channels, inline action buttons, EMA grouping, wind-down sync)
Notification improvements
- 5 Android notification channels (gentle/medication/reply/ema/crisis) with per-type importance
- Inline action buttons: Snooze 1h/3h, Check in/Not now, Taken/Remind 30m, Dismiss
- EMA notification grouping, wind-down sync on app open
- Progressive cooldown wired (dismissal tracking)
Install
- Download the APK below and install on Android 8+ (API 26+)
- Or use Obtainium to auto-update from this release
tsc clean, guard green (2511 tests, 0 review flags). On-device only — nothing leaves your phone.
NilaMind v1.9.10
NilaMind v1.9.10 — localization, longitudinal wellbeing & family mode
On-device, privacy-first. Install/update via Obtainium (recommended) — see the ➕ link in the README — or download the APK below.
What's new since v1.9.9
Languages
- Hindi, Tamil & Telugu localization across the crisis (§9) surface, Tools, You, Settings, Dashboard, and quiet-mode/DND — India-first, all on-device.
Longitudinal & course-tracking
- WHO-5 wellbeing tracking over time (Phase 17).
- Episode-phase marker — a you-owned bipolar course tracker (Phase 18).
- Family / caregiver mode — consent-gated, on-device sharing (Phase 19).
Rhythm & proactive care
- 7-day anchor rhythm timeline with mood overlay; proactive wind-down offer when rhythm dips.
- Real Sleep Regularity Index (Phillips et al. 2017) alongside the existing duration-consistency signal.
- Seasonal mood-pattern insight; smarter notification timing learned from engagement; weekly review digest.
Companion voice
- Ash-calibrated exemplar corpus expanded to 138 gold exchanges; register-steer belt so the on-device model actually holds the companion voice.
Safety & privacy
- Auto-update / privacy UI in Settings.
- Crisis (§9) copy fully preserved and localized — safety is model-independent and always unconditional.
Signed with the same release key as prior versions (cert SHA-256 003f02bc…c37d), so Obtainium updates in place. Not clinically validated; not a medical device.
NilaMind v1.9.9
Catch-up release closing the gap since v1.9.2 — a large batch of work had accumulated on main without a published build. Highlights, grouped:
Safety (§9)
- Tamil/Telugu negation-first crisis-phrase coverage locked in, plus a native-review flag
- Hindi precision hardening + distortion negation-guards (adversarial review)
- Crisis takeover now fires only on genuine risk (was over-triggering); solution-forward overlay
- Removed the persistent CrisisPill from the app shell — crisis stays reachable, not constantly visible
- Region & crisis-lines selector; Tele-MANAS first-line + pesticide means-safety category
Companion voice
- Short, non-lecturing companion replies (persona + exemplar-RAG) instead of long explainers
- Fixed first-person mirroring / role-confusion in replies
- Per-turn steering for "why/how" questions so the model reflects instead of lecturing
- Anti-sycophancy: closed a paraphrase-evasion gap
Clinical research wave 2
- BA/PST implementation intentions + fidelity, GAD-worry and DBT-skills routing fixes
- ACT values-based-action micro-protocol, inhibitory-learning exposure prompts
- Alliance-voice validate-first sequencing, engagement-onboarding personalization
- EMA cadence copy + streak de-emphasis; Social Rhythm Metric (IPSRT) tracker
- Lethal-means counseling flow (Stanley-Brown step 6); assertion training module
Reports & exports
- Clinician-facing PDF report (behavioral insights, sleep analysis, assessment trajectory)
- Structured JSON clinical export; experimental FHIR R4 export
- Selectable 7/30/90-day report window + on-device usage section
UI
- NilaFace redesign (biophilic breathing, crisis differentiation, haptics)
- Manic-first state layer — elevation reaches the UI, not just copy
- Accessibility pass: tap targets, focus rings, text floor
Housekeeping
- README no longer hardcodes a stale version number
- Dead code removal (unused components, dead exports)
Default model is still the stock, un-fine-tuned Gemma-3-1B-Instruct (~806MB) — see docs/TRANSPARENCY.md for the full model card and safety architecture. All inference, crisis detection, and voice transcription run on-device; no account, no backend, no analytics.
Try it now, no install: https://nilamind.netlify.app
Android: download the APK below, or track releases automatically via Obtainium (see DISTRIBUTION.md).
NilaMind v1.9.0 — Build queue cleared (Phases 8–16)
🎉 Build Queue Cleared — Phases 8 through 16 Complete
All phases from the extended build queue are now shipped and deployed.
📦 What's New (Phases 8–16)
| Phase | Feature | Tag | Key Changes |
|---|---|---|---|
| 8 | Forgiving engagement & streak redesign | 🟢 | 3-day grace window, constellation metaphor, capacity-adaptive tasks, no-pressure copy |
| 9 | Episode-adaptive UI | 🟡 | adaptiveTheme.ts — mutes palette during elevation, warms during low, CSS variable overrides in App.tsx |
| 10 | Social rhythm as daily core anchor | 🟢 | TodayScreen hero, NilaCheckIn SRM prompt, Dashboard weekly trend, nilaContext circadian wiring |
| 11 | Voice-first primary input | 🟢 | Mic-first chat bar, Vosk warm-load, NilaCheckIn + DiaryCardScreen voice entry |
| 12 | Clinician-facing report PDF | 🟡 | clinicianReport.ts — 30-day structured PDF (PHQ-9/GAD-7 trajectories, sleep, meds, episodes, engagement) + "Share with psychiatrist" button |
| 13 | India market polish | 🔴 | Skipped — explicit decision to defer |
| 14 | UI warmth & accessibility | 🟢 | accessibilityBaseline.ts + 41 TDD tests — 44px tap targets, focus-ring, text-size floor, semantic backgrounds |
| 15 | Anti-sycophancy hardening | 🟡 | 27 new MANIC_VALIDATION entries (religious grandiosity, financial impulsivity, hypersexuality, multilingual pressured speech), metrics, context block, AboutNilaScreen explanation |
| 16 | N-of-1 personalization surface | 🟢 | getNo1Insights(), getNo1DashboardCard(), no1ContextBlock() — InsightsScreen + Dashboard + nilaContext wiring |
🛡️ Safety & Quality
- 1592 tests pass (vitest) — all TDD, no skipped/only/xit
- TypeScript clean —
tsc --noEmitzero errors - Guard gates — reward-hacking scan clean, review flags acknowledged
- Privacy invariant — nothing leaves device, no analytics, no external fonts
📱 Deployed
- APK built and installed on device (Motorola Signature)
- All Phases 8–16 live on-device
🔖 Previously flagged items now merged
- A3: distortionSpotter §9-gate
- A4: armedCheckin with crisis/elevation/quiet/frequency gates
- B3: safetyPlanFollowUp Stanley-Brown loop
- C1: sleep prodrome + JITAI nudge
All previously 🟡 flagged items have been reviewed and merged.
*Full changelog: git log 30297ec..HEAD --oneline
v1.9.2
NilaMind v1.7 — §9 audit hardening + 1116 tests
What's new in v1.7
🔒 Safety & Security
- §9 keyword floor expanded — added "end my suffering", "stop the pain", "end the pain", "can't do this anymore/any longer" to deterministic crisis detection (were only in LETHAL_COSIGNAL — bypassed the floor)
- Dissociation coverage expanded — 7 new depersonalization/derealization phrases
- DSM-5 elevation guard gaps closed — added irritable/agitated mania (6 markers), distractibility (5), increased goal-directed activity (7)
- 35 silent catch blocks logged — across 11 files, errors now observable via console.error
🎨 UI/UX
- NilaFace uses themed palette — warm lavender/terracotta/honey colors instead of Tailwind defaults; now responds to light/dark theme
- Tab bar a11y — focus-visible rings + 44px touch targets on tab buttons
- CrisisOverlay — 200ms slide-in animation (was instant)
- nav.ts — removed duplicate
behaviourentry
🧪 Testing
- New test file:
crisisEmbedder.test.ts— 7 tests (lazy loading, memoization, error handling) - New test file:
llamaCppLlmAdapter.test.ts— 12 tests (state transitions, streaming fallback, abort, turn-marker cutting) - 45 new tests total across all changed files, all with paired benign controls
@vitest/coverage-v8installed for coverage baselines
📊 Metrics
- 119 test files, 1116 tests (up from 117/1071), all passing
- tsc --noEmit — 0 errors
- Build — clean, 4.5s
- APK — installed on device ZD2232FCR5