CODI links a COPD patient, living with lung damage that's managed for life, with the coordinator tracking their recovery. One app for the patient, one dashboard for the hospital's coordinator, connected from the moment they leave the hospital.
Patients speak into their phone for 30 seconds each morning. The app also pulls data from their phone and Apple Watch, all of it feeding into one CODI Score.
That score splits two ways. The patient sees their own status. The coordinator sees the full picture, for every patient on their list.
COPD patients get readmitted to the hospital within 30 days about 1 in 5 times. Medicare penalizes hospitals for that with lower reimbursement payments.
That's the gap CODI steps into. For patients, it means checking their own status from home. For hospitals, it means keeping discharged patients healthy enough to protect that reimbursement.
That follow-up care already runs on its own Medicare reimbursement model, Transitional Care Management, worth roughly $200–$270 per patient in the 30 days after discharge. CODI taps into that same model, earning a small piece of it for helping the follow-up actually work.
Next, I needed to know who I was designing for. So I built two personas: one for the patient app, one for the coordinator dashboard.
A systematic review of 31 qualitative COPD studies on PubMed found patients want a simple daily read on how they're doing, plus clear next steps when something's wrong.
Another study found physicians spend 16 minutes per encounter in the EHR, a third of it just reviewing charts, hunting for information. That's the overload Sarah's dashboard has to solve, something my doctor friends complain about constantly too.
Walter needs one quiet question answered every morning. Sarah needs one loud question answered every day: who first.
"What could show someone their lung condition was getting worse, from home, without a hospital's equipment? Here's the table I built to answer that."
Reading a person's health through their voice is an emerging area, AI-driven voice biomarkers, with a real body of PubMed research behind it. CODI's AI analyzes each check-in against that patient's own voice baseline, so it can catch a change a stranger's ear never would. That's why voice became CODI's core signal.
A pulmonologist I interviewed said SpO2 is the first thing he checks in any respiratory patient, so it's the second-highest weight.
Exacerbations usually show small symptoms about three days early. A score below 30 for three straight days signals urgent, sorting patients into three zones: green for steady, orange for care needed, red for get help now.
A steady morning, and one that needs a coordinator's help.
Everything Sarah needs to make the call, in one screen.
My pulmonologist's read on this was direct: for most COPD patients, who are elderly, an exact score just causes fear, and a raw number is hard to parse on top of that. The coordinator, a nurse or any clinical staff member, wants the exact number and wants to know where it came from.
From the interview, and from my own experience treating patients, people want clear instructions the moment they notice something's off. So I pulled from Australia's official COPD Action Plan: below a score of 30, the app asks what symptoms are present, then shows the matching next step.
The CODI Score has a red tier for genuinely urgent cases. The action a patient takes stays the same whether they're in orange or red, coughing calls for the same inhaler routine either way, so the patient app stops at orange, "care needed." Coordinators see the red zone clearly, so they can call right away.
I built one at first, for active exacerbations, then realized CODI's whole purpose is catching things before that point. If the button gets used, the system already missed its window, and someone struggling to breathe doesn't have time to open an app anyway. So onboarding tells patients directly: skip CODI, call 911.
Every design system decision here starts from one thing: the user is elderly.
I started from Montage, the open-source design system from Wanted, a Korean job-search platform, chosen because it adapts cleanly across both mobile and desktop, which mattered since CODI needed a phone app and a web dashboard from the same system.
Bright, easy-to-read status colors, and Inter as the typeface.
Buttons and type are sized up throughout the patient app, giving elderly hands and eyes an easier target.
Every patient-facing screen stays as simple and direct as I could make it.
Coordinator dashboard. Testers came from my medical-school network: three physician friends and the pulmonologist from the CODI Score interview, four doctors in total. I ran it as moderated think-aloud testing, sitting beside each tester while they worked through the core task and narrated their reasoning out loud. Everyone completed it without guidance, and a follow-up SUS survey scored 87.2 out of 100 (n=4), well into the "excellent" range.
What stood out most: the pulmonologist pointed out that COPD is tied to heart disease, matching my own experience treating patients, comorbidities like hypertension and diabetes always belong in the picture, not just the primary diagnosis. So I added a one-line AI summary of the patient's overall status to the dashboard.
Patient app. For the patient side, I ran an AI agent through the app configured as Walter, a simulated COPD patient, with every step of its reasoning recorded. The clearest finding: the voice button and the "next" control sat on the same screen, and the agent couldn't tell which one to use first. I removed the redundant control.
CODI was built for COPD, but the same case applies elsewhere. Medicare's Hospital Readmissions Reduction Program penalizes hospitals for six conditions: heart attack, heart failure, pneumonia, COPD, hip/knee replacement, and CABG surgery. Beyond that list, it applies to any chronic condition that gets managed rather than cured.
Working on this as both a doctor and a designer changed what I paid attention to. Treatment was never the whole story, the everyday friction around it mattered just as much. That's the perspective I want to keep bringing to healthcare products.