‹ Back to work
AI for Social Good · MLH & DigitalOcean · 2026

Bedside

A voice-first handoff app for home hospice volunteers and family caregivers. Bedside turns spoken shift notes into structured handoffs, helps the next person understand what changed, and flags concerns that may need a nurse's attention.

2nd place overall
Time
15 hours
Team
2 people
My role
Backend + agent architecture
Agents
3 live agents
A caregiver holding an elderly patient's hand in home hospice care
The idea

Making handoffs easier for the people providing care at home.

Home hospice care involves nurses, family members, and volunteers sharing responsibility across different shifts. Important context can live in handwritten notes: medication updates, changes in behavior, what helped, and what the next person should know. We wanted to explore what the handoff could look like if someone at the bedside could simply talk through what happened. Bedside turns that voice note into a structured shift summary and uses the same information to help the next caregiver understand what changed.

5%

Medicare-certified hospices are required to maintain volunteer activity equal to at least 5% of the patient-care hours provided by paid staff. Volunteers are not an edge case in hospice care. They are a required part of how hospice programs operate. Source: CMS.

What I took on
I built the system behind the interface.

Sydney focused on product design and the React frontend. I worked on the backend, data model, infrastructure, and three-agent architecture connecting everything together.

1

Handoff summarizer

Turns a spoken shift note into structured information including medications mentioned, mood, what helped, urgency, and confidence. If a volunteer's handoff contains a potential red flag, Bedside alerts the primary caregiver and asks whether they want to notify the nurse or care team. The system surfaces the concern, but the caregiver makes the final decision.

2

Care-plan Q&A

Uses the household's care plan to answer questions and show where the information came from. If the answer is not available, it directs the user to the nurse instead of generating one.

3

Pattern analyst

Reviews recent shift logs together to identify patterns that may be difficult to notice from a single handoff. In our synthetic data, it surfaced changes such as sundowning beginning earlier and signs of caregiver strain across multiple shifts.

Supabase Postgres

Stored agent responses as JSONB so the response structure could evolve without requiring schema changes during the hackathon.

Edge Functions

Kept DigitalOcean agent credentials server-side so no keys were exposed to the browser.

Failure handling

Parsed agent responses defensively and returned a safe fallback when an output was malformed instead of crashing the interface.

Debugging

Worked through issues including escalation flags being downgraded, tool calls being suppressed by the agent prompt, and a session logout bug after switching roles.

S

Sydney focused on product design and the React frontend while I worked on the backend, agent system, and integration.

All three agents ran live using synthetic patient data. No real patient information was used.

Timeline

15 hours from idea to presentation.

Planning, building, and presenting. The hour splits inside the 15 are approximate.

Hour
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Phase
Define
Build
Blocked
Integrate
Present
Mine
Agent architecture
Backend, agents 1 & 2
Investigating the 403s
Integration + fixes
Agent 3
Sydney
Figma concepts
React frontend, QR + PIN
UI on mocked data
Wire real responses
Demo
Mine Sydney Infrastructure issue outside our app

Working in parallel: while the inference provider was returning 403 errors, Sydney kept building the frontend against mocked responses, so both tracks stayed productive until live agent responses returned.

What happened

What we ran into, and what I'd change.

01 · Infrastructure

Inference calls returned 403 errors

Our inference calls began returning 403 errors even though authentication was working correctly. After debugging the account and endpoints, we determined the issue was outside our application.

What I'd do differentlyTimebox external infrastructure issues earlier and switch approaches sooner when a dependency stays blocked.
02 · Agent behavior

An agent followed formatting instructions too literally

One agent followed my JSON formatting instruction so literally that it suppressed the tool call used to surface an escalation prompt to the caregiver.

What I'd do differentlyTreat tool behavior as part of the agent's core instructions and test the full decision path, not just the structure of its response.
03 · Integration

The frontend and backend used different data

The frontend and backend were initially using different patient data. Both worked independently, but the mismatch became obvious when we connected them.

What I'd do differentlyEstablish one shared source of truth for demo data before implementation begins.
What we built

A handoff designed around the shift itself.

01

Simple entry

Scan the household QR code, choose a profile, and enter a PIN without creating an account or downloading an app.

02

Voice handoff

Describe what happened during the shift instead of filling out a structured report.

03

Shift context

See what changed, review the care plan, and understand routines before starting the next shift.

04

Role-based information

Family members, volunteers, and nurses see information based on what they need for their role.

Bedside was one of the first projects where I spent most of my time designing what happened behind the interface. The agents were only one part of the system. I had to think about what data they could access, how their responses were structured, when they should escalate, what happened when they failed, and how the frontend could keep moving while the backend was unavailable. It changed how I think about AI products. The interface is only one layer of the experience. The behavior underneath it needs to be designed too.

The team

Two designers, 15 hours from idea to prototype.

Michelle Bui worked on the backend and agent architecture. Sydney focused on product design and the React frontend.

Michelle Bui · UX/Product Designer · All work