Signals
All-in-one health app
Signals is an iOS health app that reads a WHOOP strap directly and brings recovery, sleep, training, nutrition, and insights into one place.
| Role | Creator |
|---|---|
| Scope | Strategy, design, and engineering |
| Timeline | October, 2026 — present |
| Status | Alpha |
| Platform | iOS |
Problem
Keeping track of your health requires a stack of apps:
WHOOP tracks vitals and strain.
8Sleep scores sleep and recovery.
MacroFactor tracks nutrition.
Strava tracks cardio.
Hevy tracks strength.
Withings tracks body composition.
And Apple Health tries to connect to them all.
A bad night sleep, a hard training session, and a cheat meal land in different apps that never communicate. The subscriptions stack up, and the data lives in clouds you don't control.
The problem is connection.
I built Signals around a simple premise: the devices already measure the data.
What's missing is one model of the day that connects how you slept, trained, ate, and felt.
WHOOP data
Signals is a personal project and is not affiliated with WHOOP.
Signals reads the WHOOP strap without needing WHOOP's app. Heart rate arrives live, and the strap's stored history of sleep, temperature, movement, and steps download directly to your phone. Signals can also use the strap's vibration: zone alerts during a workout, timers in the sauna, and a wake alarm in the morning.
All your data is on your phone with no account, no subscription, and no cloud in between.
Signals
The Signals tab answers one question: how am I doing today?
Every score answers it against your own baseline rather than other people's.
A resting heart rate of 58 means little on its own.
Six beats above your usual means something.
Energy score works like a battery. It starts each morning at your recovery, and the day drains it through time awake, stress, and strain, while low-stress periods and naps charge it back.
A number that moves with your day is more useful than a verdict set in the morning.
Status reduces eight parts to one word: Primed, Balanced, Stretched, or Drained.
| Score | What it measures | Compared with |
|---|---|---|
| Energy | Morning recovery, drained through the day | Your last 7 and 90 nights |
| Status | Last night's vitals and the week's sleep, energy, load, and stress | Your last 30 nights and 6 weeks |
| Stress | Daytime heart rate above your calm | Your calm over the last 14 days |
| Sleep | Hours against need, and regularity | What yesterday's strain asked for |
| Strain | How hard your heart worked | Your resting and maximum heart rate |
Replacing WHOOP's app meant rebuilding its scores, so each one is fitted against more than 300 days and 250 workouts of my own WHOOP history.
Fitness
The Fitness tab answers a slower question: is my training working?
VO₂ max is estimated from your walks and runs. On each steady minute, your pace shows how much oxygen it took, and your heart rate shows how hard that was for you. It's placed against people your age and sex, from Novice to Elite. Weight and body fat sit beside it, from the scale through Apple Health.
Training load compares your last 7 days of strain with your last 6 weeks, and names the result: Detraining, Maintaining, Building, or Overreaching.
The same week can be building for one person and overreaching for another.
Some training needs no logging at all.
Walks are detected from your cadence, and can save themselves.
Training
Workouts are tracked across 21 activities in cardio, strength, and recovery. Each runs live in the app, on the lock screen, and on your wrist.
The strap becomes a screen you never have to look at.
Cardio tracks distance and pace with GPS. As your heart rate settles into a new zone, the strap buzzes the zone's number, once for Zone 1, twice for Zone 2, etc. to help guide your strain.
Strength tracks sets and reps, and fills in each exercise with your sets from last time. Each workout begins with a warm-up that buzzes when you're warm enough to start your sets. Rest runs on your heart rate, not on a timer, so the strap buzzes when your body is recovered between sets.
Recovery covers 12 activities, from the sauna and ice bath to breathwork and naps. Most count down to a target time, and heat and cold sessions buzz along the way to keep you updated on time remaining. The Recovery page later shows how each one affects the next morning's energy.
The lock screen shows the key data: your heart rate, zone, time, and what's next, with a button for the next step that works without having to unlock your phone.
The summary afterwards shows how you performed. A run's route is colored by zone, with time in each zone, pace, and splits by the kilometer marked Even, Negative, or Fading. A strength workout counts its exercises, sets, and total volume. A recovery activity shows what it did to your heart: how far the sauna raised it, how sharply the ice bath shocked it, how low breathwork brought it. Every workout adds to the day's strain and to your training load.
Nutrition
The Nutrition tab answers: what nutrients did today's food actually give me?
It leads with the day's calories, with protein and the food score beside them, then every meal on a timeline with the gaps between them, so long fasts and late snacks are easy to see.
Logging a meal starts with the camera. Take a photo, pick the foods from a grid, set the amounts, and save. Meals you eat often save as recipes, so the next time, the whole meal is one tile in the grid.
The food data is built on my own food system: 120 foods with their full nutrients, scored with my NOVA ranking.
A meal isn't scored by its calories. It's scored by how much of the day's needs it covers, across 21 vitamins and minerals, protein, and fiber, minus anything past the limits for saturated fat, sodium, and added sugar. The score scales to the meal's share of the day, so a snack isn't judged like a dinner, and one salty meal can't erase everything else it covered.
Processing matters too, but only at the extreme. Foods are Whole, Semi-processed, or Ultra-processed, and only ultra-processing costs. Hummus, olives, and cheese aren't penalized for being made the old way.
Journal
Each morning, the journal asks about the day before: substances, food and drink, supplements, what you did before bed and in bed, your body, your mind, and your day. Each question is a yes or a no, and the journal opens where you left off. Answers you gave in WHOOP's journal count too.
Over time, the journal shows what each habit does to you. Effects on Energy compares the mornings after a yes with the mornings after a no, once there are five of each, and ranks your habits from the most draining to the most restoring. Habits still short of five show how many days they need, and yesterday's yeses are marked on the chart.
The answers feed the rest of the app. A yes to a supplement adds its dose to that day's intake, checked against the upper limits, while the food score still reads food alone.
Insights
The Profile tab answers the longest question: where am I headed?
Signal Age turns habits into healthspan. Each habit's effect comes from a large study of mortality: sleep consistency, hours asleep, zone minutes, steps, strength training, and resting heart rate. Since mortality roughly doubles every 8 years of age, each study's risk becomes years added or taken off. It moves once a week, and its pace shows whether you're aging faster or slower than the calendar.
Streaks count the days you hit your targets for steps, calories, and protein, set here too, and the days you answered the journal. Last month and This year sum up how you've been, and Records keep your bests, from your lowest resting heart rate to your longest run.
Reading the signals together
Signals began as a way to stop switching between apps. It became one model of the day.
Simplicity. One strap, one app, one place to look. The home screen answers how you're doing today, and the detail is a tap away.
Synergy. Each signal feeds the next. Last night's sleep sets this morning's energy. Energy sets the day's strain target, and a week far above your usual lowers it. The scale's weight sets the calorie and protein targets, and the journal's supplements count toward the day's intake.
Insight. Patterns appear when everything shares one timeline. Status reads last night's vitals together with the past week. Effects on Energy finds what a late dinner or a drink does to the next morning. Signal Age adds up what your habits say about the years ahead.
No signal says much on its own. Read together, they tell the story.
That's why the app is named Signals.






























