From a 2022 wireframe to a living 2026 prototype
A prescription app that works on any phone — even one that only does SMS.
In 2022 I designed wireframes for Sandoz (with Mirumee) of an app a doctor “prescribes” to a patient like a medicine — for the whole world, the Global South included: cheap phones that only do SMS and patients who cannot read. Now I've turned them into a working Material 3 Expressive PWA prototype: all ten features of the case study, a doctor portal, an SMS simulator and data sharing with a BLIK-like code.
Open the prototype (opens in a new tab)See how it works
The prototype's interface is in Polish.

01
The patient doesn't have to install anything
The first touchpoint is an SMS, RCS or WhatsApp message with the text and the number the doctor generated. In its basic form the whole programme works as text, in that conversation. The installed app adds extra features.
- 1
The doctor “prescribes” the programme
In the doctor portal they pick the diagnosis, medicines and reminder times. The portal generates the message text (e.g. HIV482) and the number, and the doctor prints a card for the patient: send it by SMS or on WhatsApp.
/lekarz/przepisz
Sandoz Healthdr n. med. Katarzyna LewandowskaLipowa Medical Centre, 12 Lipowa St, Warsaw Your health programme
for: Michał Zieliński · HIV therapy
1Send an SMS or a WhatsApp message with the code
HIV482to 4848
or
2Scan the QR code with your phone's camera
The code works once. The message costs the same as a regular text.
- 2
The patient sends the code
From then on the assistant asks how they feel, reminds them of the medicine and takes readings straight from a text.

- 3
The programme works over SMS
Without installing anything. The patient confirms the 7:30 reminder by replying “TAK” (yes), moves the dose with “ZMIEŃ 8:00” (change), types a blood pressure reading into a text, and in the evening the assistant asks how they feel. It works on any phone.

- 4
A text inviting them to the app
After a few days the assistant suggests the app: charts, visits, a document scanner. The patient taps the link, the store opens, and once installed the app signs them in by itself — the link's one-time token replaces the password.
- Sandoz Health · 4848
Michał, in the Sandoz Health app you'll see your blood pressure charts and book visits. Install it with one tap:
Install the app - Sandoz HealthGoogle Play · App StoreInstall
- Signed in automaticallyno password, no code

- Sandoz Health · 4848
- 5
At the next visit: a BLIK-like code
At the next visit the patient can share the app's content with the doctor: readings, medicines, documents. They show six digits valid for 60 seconds, the doctor types them into the portal and the data streams from the phone straight to their screen (WebRTC).

02
For every phone, in every country
Sandoz works in more than 160 countries, so one of the assumptions was that Sandoz Health has to work worldwide — in the Global South too. A patient living with HIV there may have the cheapest phone with no apps, poor coverage and expensive data. And not everyone can read.
One reminder, three ways
The cheapest phone
SMS — no data, no app
No reading needed
Voice, pictures and icons instead of text

Smartphone
The full app, offline too
SMS is a full channel, not an extra
Sign-up with a code, reminders, confirming a dose with “TAK” (yes), readings typed into the text (“135/85”) and commands such as “ZMIEŃ 8:00” (change) or “STOP” — on any phone.
WhatsApp wherever there is data
In many Global South countries WhatsApp is the main messenger, and carriers often don't charge for its data. So the same programme — the doctor's code, reminders, “TAK” replies and readings — works on WhatsApp too, with no charge per message.
For people who cannot read
Lessons with voice narration and captions, illustrations and icons instead of paragraphs, colour always paired with an icon and a word.
Poor coverage, expensive data
The basic programme is just messages, so it works even with poor coverage. The app from Google Play and the App Store works offline and keeps the data on the phone, and signing in needs no email address and no password — a phone number is enough.
Discretion for HIV
The data stays on the patient's phone. The doctor sees it only after being given a code valid for 60 seconds, only in the chosen categories, and the session can be ended at any moment. The HIV programme pairs therapy reminders with lessons that talk about the subject without shame.
The doctor as the starting point
Instead of “download the app”, the patient gets a card from the doctor with a code and an SMS number. The programme starts working with the first text; the app is an optional next step.
03
Ten features, one app
Everything the patient needs between visits in one place — from medicine reminders to sharing results with the doctor.

SMS / RCS / WhatsApp version
The whole programme works in an ordinary conversation: medicine reminders, confirming a dose by replying “TAK” (yes), moving it with “ZMIEŃ 8:00” (change) and readings typed into a message.
Effortless installation
The patient gets a text with a link. The link opens the app in Google Play or the App Store, and once installed the app signs the patient in straight away and shows the programme from the doctor — no account, no password, no codes to type.
Educational stories
Short stories about the condition and the medicines the patient actually got from the doctor: how the therapy works, what to avoid, when to see the doctor. Plus short quizzes and lessons read aloud.
Measurement diary
Blood pressure, sugar, weight, temperature, pulse and oxygen — typed in or taken from a blood pressure monitor or glucose meter. Charts show whether the results are within range, and a dangerous value tells the patient straight away what to do.
Medication reminders
The doctor sets the medicine times. The patient confirms a dose with one tap, moves the time when their day changes, sees a streak of days without a missed dose and is told before the tablets run out.
Visits and teleconsultations
Finding a doctor, picking a slot in person or online, a reminder a day and an hour before the visit, and a video call straight from the app.
Symptom assessment
The patient points to where it hurts and answers a few simple questions. They get a hint about how urgently they need help — and for dangerous symptoms, 112 straight away.
Document scanner
A photo of a discharge summary, a prescription or a test result becomes a readable document on the phone: the app straightens the page, reads the text and recognises what kind of document it is.
Records import
Prescriptions, referrals and test results from the national patient account and labs arrive in the app by themselves. An e-prescription can be shown at the pharmacy straight from the phone.
Sharing with the doctor
At the visit the patient shows a six-digit code valid for a minute, like BLIK. They choose what the doctor sees, see what the doctor is looking at right now and end the sharing in one move.

1A text with a link from the assistant

2The link opens the app in Google Play

3Installing with one tap

4The app signs the patient in by itself

5The doctor's programme is ready

1Choosing the device

2Pairing in three steps

3Connected — next time on its own

4A live reading

5The result and its assessment land in the diary
More screens
04
Touch it before you open it
A BLIK-like code
Valid for 60 seconds. When it expires the digits shuffle into a new code.
Taking a dose
The pill turns into a circle, then a ✓. The day streak grows.
Abacavir + Lamivudine
0.6 g + 0.3 g · 7:30 am
7:30am
23 days in a row
Shapes that breathe
The M3 Expressive loading indicator: seven shapes, a morph every 650 ms. Tap a tile to change the shape.
05
Material 3 Expressive from the ground up
No ready-made library: tokens generated from the Sandoz colour, springs recomputed from the Android documentation, 35 shapes ported from AndroidX.
Colour from one seed, #0460A9
Material Color Utilities, the Tonal Spot scheme, the 2025 spec — light, dark and three contrast levels.

- primary
#0661aa - primary-container
#66a6f4 - secondary-container
#d8e3f8 - tertiary-container
#dacdff - surface
#f9f9fe - surface-container-high
#e5e8f0 - error
#a83836 - success-container
#92f7bc
Google Sans Flex: ROND and wght axes
Move the sliders to see how roundness and weight change the headline's character.
Good morning, Michał!
Motion: springs, not curves
Spatial springs may overshoot slightly; effects (opacity, colour) never do.
ζ 0,6 · k 800ζ 0,8 · k 3800.2, 0, 0, 106
One ecosystem
Every part shares the same data in the browser: a code issued by the doctor works at once over SMS and in the app.
07
How it was made
Specification and contracts first, then the foundation, features last — each one checked on screenshots by a separate reviewer.
- 12022 wireframes
UX for three Sandoz apps with the Mirumee team; Sandoz Health as the most advanced.
- 2Specification
The case study broken down into about 230 requirements, a route map, data contracts and motion rules.
- 3M3 foundation
Colour and motion tokens, typography, shapes, a component library and a shell inside a phone frame.
- 4Features and reviews
Two waves of features; after each a separate review on screenshots in light, dark and desktop.
- 5Tests
Unit tests for the engines (norms, SMS, symptoms, GATT, .ics) and Playwright for the key flows.
Technology stack
- Next.js 16
- React 19
- Motion
- Material Color Utilities
- Dexie (IndexedDB)
- Web Bluetooth
- WebRTC
- WebOTP
- Tesseract.js
- pdf-lib
- Playwright
- Vitest







