Inspiration
In an era where AI accelerates output, many people feel lonelier, tighter, and unseen. Most wellbeing tools still rely on cloud accounts and stable internet, excluding users with privacy constraints or unreliable connectivity. SIIHA exists so support can be present even when the network isn’t—without shipping feelings to a server.
What it does
We follow a gentle three-beat rhythm: mirror → tiny step → permission.
- Mirror: reflect feelings in plain, non-clinical language—people first.
- Tiny step: offer one small grounding option (breath / pause / micro-reset).
- Permission: end with “you can stop here”—no rush to solve.
Extras: Weekly Trend keeps signals, not text; the 3-day low-mood view uses 0–5 intensities to highlight heavier periods; there’s a one-click erase.
Why it’s different
- Local-first by design: core prompts/resources are bundled; Built-in AI runs on-device.
- Network-agnostic: same behavior online/offline.
- Respectful observability: intensity bins & counters only, one-click erase.
- No scraping: the floater renders its own UI; page text isn’t parsed or uploaded.
How we built it
- Chrome MV3: Service Worker schedules alarms and manages local state; Content Script renders the floating companion UI.
- Built-in AI (Prompt API / LanguageModel):
availability/create/ (when available) streaming—responses are generated on-device. - Local-first storage:
chrome.storage/ IndexedDB store only preferences and counts; no page-text parsing, no cloud calls. - Alarms: local rest reminders. Model Manager (Beta): storage estimate + download/update of the built-in model (file stays on device).
- Privacy guardrails: broad host permissions only to render the UI; no third-party analytics or tracking pixels.
Challenges we ran into
- Baking “warmth” into an offline UX: slowing down and truly listening without relying on cloud LLMs.
- Availability variance: handling differences in Built-in AI/Prompt API readiness and model download flows—self-checks and graceful fallbacks.
- Observable without exposure: making trends helpful with counts/levels only, while storing no text.
Accomplishments that we’re proud of
- End-to-end offline: after a one-time download, conversations and trends run fully offline.
- Respectful visualization: Weekly/Low-mood reveal rhythm without storing message text.
- Clear privacy story: signals-only, one-click erase, no third-party tracking.
- Robust pacing design: the three-beat structure makes “listen first, steps later” the product default, not a slogan.
What we learned
- Pace matters: slowing down and allowing people to stop reduces pressure more than adding steps.
- Local-first shifts trust: when data never leaves the device, people open up.
- Minimal observability is enough: intensity and counts reflect daily swings without over-collection.
- Consistent terminology wins: using “Prompt API (LanguageModel)” across docs/UI helps reviewers and users understand instantly.
What’s next for SIIHA — On-device Emotional Care for Chrome (Prompt API)
- A11y & localization: ARIA/keyboard flows; language packs (still local-first).
- Richer grounding: breathing rhythms, body scan, micro-narratives.
- Data sovereignty: local export/import for personal use; no cloud dependency.
- SDK / developer path: wrap the three-beat rhythm + local storage strategy as a Web SDK; research-grade Gemini CLI Plugin to bring pacing into dev workflows (no project-text ingestion).
- Evaluation (no over-promising): offline session share, completed grounding per day, clear-data usage, and optional reflections on feeling more accompanied/calmer.
Built With
- chromeextensionmv3
- css
- html
- indexeddb
- javascript
- promptapi
- serviceworker
- typescript
Log in or sign up for Devpost to join the conversation.