Selected Work
Case study · 01 / 03

refluxly

React Native · Privacy-first

A symptom journal for people living with GERD and reflux. All health data stays on the device, there's no account and nothing leaves your phone unless you choose to export it.

React NativeExpoDrizzle ORMTypeScriptFigmaClaude DesignDesign thinking
refluxly splash screen
RoleSolo · design & build
TypePersonal project
PlatformiOS · Android
StatusIn development
01

Overview

Built for someone close to me who has lived with GERD for years.

Someone close to me has dealt with GERD for years, and always wished there was a better way to log symptoms: something that could show what was actually going on over time, what the triggers might be, and export it to take to a doctor. There are millions of people in the same position, so I decided to build it.

Right now the foundation and the Home screen are built end-to-end, pixel-accurate in light and dark, with the local database, theming and navigation fully wired up. The remaining screens, logging, trends, export, history and full onboarding, are stubbed and being built out in later passes.

02

The problem

Existing symptom trackers either ask too much for too little back, or hand your health data to a third party. I wanted something privacy-first, where logging a few things a day starts to reveal the correlations on its own, with the app never making medical calls on your behalf.

03

My role

A solo build: the concept, UX, visual design, architecture and code are all mine, with a product designer to bounce ideas off.

Product concept
UX & visual design
React Native / Expo build
Local data layer (Drizzle ORM + SQLite)
App architecture & theming
04

How it works

refluxly home screen showing the daily log

Track what matters

Log symptoms, meals, mood, medication and intakes, so the correlations between them can start to surface.

refluxly settings screen with privacy and data options

Privacy by architecture

Everything lives in an on-device SQLite database. No account, no servers, nothing leaves your phone unless you export it yourself.

refluxly trends screen visualising symptoms over time

It logs, it doesn't diagnose

Refluxly tracks what's happening so you can spot patterns, it's never going to tell you what they mean. That's between you and your doctor.

05

Stack & architecture

Client
ExpoReact NativeExpo RouterTypeScript
Data
expo-sqliteDrizzle ORMZustand + MMKV
Testing
JestReact Native Testing Library
Design
FigmaClaude DesignDesign thinking

Local-first by design: expo-sqlite and Drizzle ORM hold all health data on-device, while Zustand and MMKV handle non-health app state like theme and onboarding, kept deliberately separate.

06

What I learned

Building it with someone specific in mind meant knowing exactly what to leave out: no nagging, no advice, just the information handed back to you that you can give to a doctor to help make sense of.