Inspiration
Every year, more than two million people around the world are diagnosed with breast cancer. For many of them, surgery is when they're told, "you made it." But anyone who has been through it, or watched someone they love go through it, knows that's not the end. It's the start of a different kind of fight.
After a mastectomy or lymph node removal, things you never thought about suddenly get hard, lifting your arm to wash your hair, putting on a shirt, reaching for a mug on the top shelf. We kept picturing some of the pain points of rehab and how we could make that process easier.
Rehab works. In one clinical trial, 85.7% of patients who received tailored exercises regained shoulder strength within six months, compared with just 18% who received usual care. But most recovery doesn't happen in a clinic. It happens at home, alone, which can leave you with a lot of questions: Am I doing this right? Am I pushing too hard? Am I even getting better?
Recovery instructions also change over time. Early on, patients are often told not to lift their arm past a certain height. Weeks later, they're told to push. Without feedback, many people either overdo it or, more often, stop using the arm out of fear and slow down their progress.
We built Haven so no one has to figure out recovery on their own.
What it does
Haven is a personalized post-mastectomy rehabilitation coach that lives with you at home.
- It reminds you to move. A small band on your upper arm chirps when it's time to exercise, and it knows when you've actually done it. Raise your arm and the reminder clears on its own.
- It guides every rep. Using the camera you already have, Haven tracks your arm in real time, counts reps, checks your form, and coaches you by voice, because you can't look at a screen with your arm over your head.
- It keeps you within your care team's limits. Your clinician sets a safe range from the dashboard. The band warns you like a parking sensor: slow beeps as you approach the limit, faster as you get closer, and an alarm if you go past it. The limit is stored on the band itself, so it protects you even when no computer is nearby.
- It keeps your care team in the loop. Clinicians get a dashboard that tracks mobility, pain, daily arm use, and recovery trends, and flags changes that may need attention.
- It explains your progress in plain language. Haven writes a summary for the patient and a report for their physical therapist. Every number in them is verified against the real data.
How we built it
The wearable
A Seeed XIAO ESP32-S3 reads a BNO085 orientation sensor at 100 Hz, drives an active buzzer, and runs on a 600 mAh rechargeable LiPo using the board's built-in charger. Everything fits in an armband. The firmware streams data over a custom bluetooth low energy service at 20 Hz that accepts commands for the safe limit, reminders, mute, and calibration. It saves settings to on-board memory and uses a non-blocking buzzer pattern engine, so alerts never interrupt sensor readings
Frontend
- React + TypeScript
- MediaPipe Pose runs camera tracking entirely in the browser, so video never leaves the device
- A custom session engine counts reps, enforces the clinician's limits, and checks form
- The voice coach plays clips pre-recorded with Gemini text-to-speech, falling back to the browser's built-in voice
- The armband connects directly over Web Bluetooth, with no app to install
Backend
- Node + Express + TypeScript, deployed as a single Vercel function at
/api - Deterministic rules in code raise every safety flag. Gemini only writes the wording, never decides what's concerning.
- Gemini writes the patient summary and the PT report, and the server checks every number in them against the data before anything is shown.
Data
- Tiger Cloud
- The armband stream and daily-use data are stored.
- Daily rollups are done so dashboards stay fast as data grows.
Auth and hosting
- Auth0 handles sign-in. Clinician access comes from an allowlist, and patients are linked to their care team by verified email.
Challenges we ran into
Accomplishments that we're proud of
- A fully wireless band that streams live arm movement to the browser with no app install.
- Safe limits set by the care team, confirmed back from the device, and enforced on the band even offline.
- Feedback that teaches patients where their limit is before they reach it, instead of only alarming afterward.
- Privacy by design: camera tracking runs on-device, and video never leaves the patient's computer.
What we learned
We learned how much of recovery happens between appointments, where neither the patient nor the care team has much visibility. On the technical side, we learned Bluetooth Low Energy, Web Bluetooth, in-browser pose estimation, and time-series data modeling with hypertables and continuous aggregates. Most of all, we learned that health technology is about trust as patients need to trust that their feedback is accurate, clinicians need to trust that their instructions actually reach the patient, and everyone needs to trust that the AI isn't hallucinating.
What's next for Haven
- Smarter alerts: flag sudden drops in range of motion that could signal cording or another problem worth checking with the care team.
- Lymphedema monitoring: add arm swelling trend tracking, since swelling risk affects the same arm.
- Discreet haptics: add a vibration option for patients who don't want audible alerts in public.
Haven — Recover at home. Never alone. 🌐 havenn.health
Built With
- auth0
- css3
- express.js
- gemini
- google-gemini-api
- gsap
- html5
- mediapipe
- node.js
- postgresql
- react
- tiger-data
- timescaledb
- typescript
- vite
- vitest
- xiao-esp32s3


Log in or sign up for Devpost to join the conversation.