Inspiration
Coming from a big family with four generations still around, I've watched the middle generation step into caregiving roles non-stop to care for our elders. Seeing that, alongside the beneficiaries I've met through many volunteering sessions, is where this idea came from.
The helplessness behind it is one of the things that burns caregivers out. It doesn't look like exhaustion or tears, it looks like a competent person quietly running out of ideas, day after day. I wanted to build something that helps to lift that burden.
What it does
Ember suggests small activities tailored to the person's condition, stage, mood, and abilities — either to connect with the person they care for, or to give the caregiver a moment to breathe.
The caregiver picks how their person is doing today (calm, restless, withdrawn, agitated, tired), then chooses reach them or a break. Ember shows a grid of fitting activities ranked by relevance. Tap one for full steps. That's it — no typing, no tracking, no journaling. Two taps to one good idea.
It works across 11 conditions (dementia, stroke, Parkinson's, cancer, frail/ageing, mobility, vision/hearing, disability, mental health, end-of-life) with 92 grounded activities, and learns over time what reaches their person.
How we built it
- React + TypeScript + Vite — mobile-first web app, no backend, all data stays on-device.
- Grounded recommendation engine — a two-stage system: safety filter (condition, stage, mobility, communication level) then mood-aware ranking. If the person has minimal speech, only passive/sensory activities pass through. The scoring formula:
$$\text{score} = 3 \cdot \mathbb{1}{\text{mood}} + 2 \cdot \min(n{\text{interests}}, 3) + 2 \cdot \mathbb{1}{\text{worked}} - 2 \cdot \mathbb{1}{\text{flopped}} - \mathbb{1}_{\text{recent}}$$
- 92 activities grounded in established care practices — reminiscence therapy, LSVT BIG/LOUD, task-oriented stroke rehab, behavioural activation, palliative comfort care.
- WebAuthn for real Face ID / Touch ID login — no passwords, works over HTTPS on any phone.
- Deployed on Vercel — public link, works on any device, no install.
- Built with AI assistance (Claude) for development, iteration, and content grounding.
Challenges we ran into
Appropriate matching was the hardest part. Early versions suggested "laundry folding" for a late-stage dementia patient with minimal speech — technically tagged correctly, but completely inappropriate. This led to adding a passive flag across 38 sensory/receptive activities and a communication-aware engine filter that restricts to passive-only when the person has little or no speech.
Resisting feature creep. Every instinct said "add more" — duration timers, sort options, progress logs, mood tracking. Each was tested against one principle: does this reduce burden or add it? Most were cut. The app got better by removing things.
Design for sensitivity. Caregiving is emotional. The app needed to feel warm and human, not clinical (blue = hospital) or overwhelming. Finding the right palette and density took many rounds of iteration.
Accomplishments that we're proud of
- 92 activities across 11 conditions, all grounded in real care practice and honestly cited — not invented.
- A communication-aware safety filter that ensures someone with minimal speech only sees passive, sensory activities. No other caregiver app does this.
- Mood actually changes the results — picking "agitated" surfaces genuinely different activities than "calm."
- The entire app runs client-side — the caregiver's data never leaves their device.
- Real Face ID login via WebAuthn, working on any phone through the deployed HTTPS link.
- It's my first hackathon, built from scratch in one sprint.
What we learned
- A recommendation engine for vulnerable people is only as good as its understanding of the whole person — not just their diagnosis, but their stage, abilities, communication level, and mood today.
- "Does this reduce burden or add it?" is the only design question that matters for burned-out users. Trackers, journals, and dashboards all fail this test.
- Good design for caregiving means restraint: fewer features, less text, fewer taps. The best screen is one that asks one question and gives one answer.
- Grounding matters: citing real organisations (Dementia Singapore, AIC, SNSA, IMH, Singapore Hospice Council) and established therapies builds trust that a generic AI chatbot can't.
What's next for Ember
- Caregiver interviews to validate and refine the activity library with real users.
- AI-personalised activity delivery — let an LLM tailor how each activity is presented to the specific person, while keeping the safety filtering deterministic.
- Integration with Singapore's care ecosystem — AIC, Dementia Singapore, DementiaHub.sg, and condition-specific associations.
- Caregiver wellbeing tracking — subtle, passive signals (not quizzes) to detect when the caregiver themselves are sliding, and respond with real support before it becomes chronic.
Built With
- caregiver-data-never-leaves-the-device)-recommendation-engine:-custom-built
- claude
- css
- deterministic-(safety-filtering-+-mood-aware-ranking-+-communication-aware-passive-filtering-?-not-an-llm-api-call)-development:-built-with-ai-assistance-(claude)-for-code-generation
- fraunces)-hosting/deployment:-vercel-(https
- global-cdn)-data-storage:-localstorage-(client-side-only-?-no-database
- html
- html-frameworks-&-libraries:-react-18
- iterative-design
- no-server
- not-simulated)-fonts:-google-fonts-(figtree
- react-18
- typescript
- vercel
- vite
- vite-5-authentication:-webauthn-api-(face-id-/-touch-id-/-windows-hello-?-real-device-biometrics
- vscode
- webauthn
Log in or sign up for Devpost to join the conversation.