Everything Flow does, in detail.
Every clip below is the real app, recorded on a real account. No mock-ups. Where a number is quoted, it is the number the app uses. Prefer the short version? Each feature also has a scroll-told story.
Sixty seconds, every feature.
One cut through the whole app, library, logger, watch sync, Finish Day, levels, programs, meals, heat map. Each stop is expanded below.
Every movement, generated and reviewed in-house.
A shared catalog where each exercise has its own looping demo, generated by us, reviewed by us, one per machine.
Flow ships a public exercise catalog you can search by name, muscle or equipment. Each exercise carries one render per piece of equipment, the cable version, the machine version, the free-weight version, so what you see is the exact movement on the exact machine in front of you. Renders are produced in-house, three candidates per movement, and a human picks the one that goes live.
- 1Search by name, muscle group, sub-muscle or equipment; filter with multi-select muscle chips.
- 2Three layouts, grid, list and a swiper that pages through one exercise's machines.
- 3Looping demo videos only load while on screen, so the library stays light on data.
- 4Each equipment variant has its own render, chosen by a reviewer from three candidates.
- 5Step-by-step instructions sit one tap away inside the logger, next to the video.
- 6Add your own private exercise or propose new equipment for a shared one, proposals are reviewed before they go public.
Renders are text-to-video from a house-style prompt, uploaded to a CDN, and served with a still frame taken at one second so the first paint is never a blank avatar.
Load the bar. Log the set.
A plate-loading widget instead of a number field, and a logger that already knows what you did last time.
Tap plates onto a barbell that redraws as it loads, or tap a block on a weight stack, or pick a dumbbell, the widget matches the equipment. Flow remembers every weight you have used on that exact variant: change the weight and the reps jump to what you usually do at it; log a set and the card tells you whether it was a rep record or how it compared to your average. When you are ready, a rapid panel pre-fills the whole exercise from your history so a full workout is a few taps.
- 1Barbell, weight-stack, fixed-weight and body-weight widgets, picked automatically from the equipment.
- 2Plates land with a slam-in animation and a clink; the rack cascades in when the sheet opens.
- 3Most-used weights sit as one-tap chips, each showing the reps you usually hit at it.
- 4Change the weight and the reps follow your history at that exact weight, until you type your own.
- 5Every logged set is tiered: all-time record (gold), heaviest today, or a normal set with "avg × · best ×".
- 6Rapid sets pre-fills an opener you have actually used plus working sets at your most-used weight; later in the day it carries on from your last set.
- 7An effective-reps ring tracks 20 working reps per exercise, set one is the warm-up and does not count.
Suggestions come from flushed history only, so nothing you log today moves the bar mid-session. The plate maths knows a 20 kg Olympic bar from a plates-only machine and can load two sleeves unevenly.
- 1The widget matches the equipment: a barbell that redraws as plates land, a weight stack, a fixed dumbbell, or plain reps.
- 2Most-used weights sit beside it as one-tap chips with the reps you usually hit at each.
- 3Every logged set becomes a card on the strip, gold for an all-time record, accent for today's heaviest.
- 4The ring in the footer fills toward 20 effective reps; set one is the warm-up and does not count.
One workout, three ways to see it.
The same day as a grid of cards, as one list, or one machine at a time, and the app remembers which you picked.
Today has three layouts, switched with the three round buttons above the day. Card view gives every exercise its render across the top and the equipment deck under it. List view folds the day into one hairline slab with the render playing down the left edge, so a whole session fits on one screen. Swipe view turns an exercise trained on two machines into two pages and counts machines, not exercises, so the tally matches what you actually have to do.
- 1Card view: a 16:9 render across each card, the exercise deck underneath, one ordinal per exercise.
- 2List view: one slab, the render looping on the left edge, the whole day on one screen.
- 3Swipe view: one machine per page; a finished machine lifts out into its own receipt card.
- 4A finished exercise is struck through in gold once it hits 20 effective reps; a merely logged one gets the accent rail.
- 5Your choice is remembered on that device, so the next day opens the way you left it.
Your run, straight from your watch.
Over a hundred sports, each with its own icon and intensity, logged from the sessions your watch already recorded.
Pick a sport from a catalog that runs from running and cycling through team sports, racket sports, combat, dance, climbing and winter, each hand-drawn icon backed by an intensity value the scoring uses. Choose the day (a run is often logged the morning after), and if a watch that syncs to Google Health recorded a session that day it appears as a certificate: calories, time, distance, steps, pace, heart rate. Confirm it and it is logged and scored. This works only with Google Health-compatible watches; with any other watch, or none, type the session in.
- 1A searchable sport grid, filtered by category, with looping renders for the public sports.
- 2Five-day strip so yesterday's match or this morning's run lands on the right day.
- 3Watch sessions arrive as swipeable certificates, one certificate becomes one entry, ever.
- 4Manual form for the days without a watch, with duration, distance, steps, calories and heart rate.
- 5Each logged sport shows duration, distance, kcal and its own XP; tap for the full receipt.
- 6Watch sync works only with Google Health-compatible watches (Health Connect / Google Fit). Any other watch will not sync: type those sessions in by hand.
A session scores 520 × (1 − e^(−minutes/45)) × intensity, and pace overrides class intensity when distance is known, a 45-minute run at intensity 1.0 is about 330 XP.
End the day. Keep the receipt.
Finish Day turns the session into a score card, a confetti moment and a shareable summary.
When the last set is in, Finish Day closes the session. You get the day's score, every XP line, the muscle figure warmed by what you trained, and the level bar rising from where it stood this morning, followed by a full summary: volume, sets, reps, records matched or missed, rep-range mix, how the day compares to your four-week average, and a per-exercise progression slider with a gold star on all-time bests.
- 1Finish day, or end partially and keep only the leftovers open for tomorrow.
- 2A confetti burst and the day-score card land instantly, from numbers already on screen.
- 3The summary is a bento of tiles: volume, sets, reps, exercises, records, duration, median rest.
- 4Rep buckets, 1-5 strength, 6-10 muscle, 11-15 endurance, 16+ stamina, show how the day was spent.
- 5A per-exercise progression slider compares each session to the last: up, down or level.
- 6Any past day's summary is one tap away on Progress → Summaries, with the same maths.
- 7Export the keepsake as an image or a PDF.
A summary is a workout, not a calendar day, a leg session that runs past midnight is still one workout.
Effort, scored honestly.
Every set earns XP against your own numbers, every day has a cap, and the level medal grows with your career total.
Flow scores effort, not volume. Each set earns reps times a multiplier from how heavy it was relative to your own estimated one-rep max; each exercise has diminishing returns, then the day does too, so junk volume cannot farm points. Real intensity is rewarded steeply, personal records carry a bonus that scales with the margin, finishing the day and clearing everything each pay flat amounts, and streak milestones pay 200. The medal in the header is your level; tap it for the day in progress.
- 1A toast on every set: XP earned, the slice of the level bar it filled, and any record it set.
- 2Set XP = reps × a 1-3× intensity multiplier from your own Epley-estimated 1RM.
- 3Per-exercise and per-day caps flatten the curve, so more sets stop paying past a point.
- 4PR bonus scales with the margin, beat it by 1% for 52 XP, by 25% for 100, capped at 250.
- 5Flat awards: 100 for finishing, 50 for nothing left over, 25 for clearing a carry-over, 10 per exercise that hit 20 effective reps.
- 6Levels: 450 × (level − 1)² XP, one session gets you to level 2; level 10 to 11 is 8,550.
- 7The Levels tab charts cumulative XP through every threshold, with level-up days in gold.
The scoring engine is a single pure module shared byte-for-byte between the app and the server, and a parity check fails the build if they drift.
Programs built from real movements.
Auto-generated programs that only ever reference human-crafted, reviewed exercises, browse them in the marketplace or build your own.
A program is an ordered sequence of workout days, each a named group of exercises. Flow authors programs automatically, but a draft can only be published when every exercise in it resolves to a real catalog movement with a reviewed render, so the marketplace never contains a made-up exercise. Start one and it is cloned into your library; or build your own with drag-and-drop days, rest days and a public/private toggle.
- 1Marketplace cards preview a program with three of its own exercise renders looping.
- 2Pills for goal, level and days per week; open a card for the day-by-day detail.
- 3Start a program and it becomes yours, days, exercises and all.
- 4The builder: drag to reorder days, add rest days, see each day's muscle coverage figure.
- 5Workout days are reusable named blocks, with a dedicated section for sports and cardio.
- 6Generated programs resolve exercises by name; anything that does not match a reviewed movement blocks publishing.
Today tracks your position in the active program, a day index that Finish Day advances, and per-day overrides let you add or drop exercises without editing the template.
Photograph the meal. Know the deficit.
Meal photos plus a line of context become macros; the week becomes a deficit; the deficit becomes a weight forecast.
Point the camera at a plate, a label or a barcode and add a line of context, "half of this", "with rice". Flow works out what it is looking at, estimates the portion and the macros, and logs it with an illustration. Log your weight on the dial, and the energy panel turns intake against burn into a running balance: a seven-day deficit strip, and a projected weekly weight change from your average deficit.
- 1One photo flow that handles meals, nutrition labels, macro cards and barcodes.
- 2Free-text context next to the photo, and a type-ahead over your own past meals so repeats are one tap.
- 3Calorie and macro targets derived from your weight, height, age, activity and goal.
- 4A seven-day strip of daily balance, deficit in one colour and surplus in another, with the average on top.
- 5Projected Weight Change: your seven-day average deficit turned into kilograms per week.
- 6Burn comes from your watch when connected (this only works with Google Health-supported watches), or from a maintenance estimate when not; adjust it by hand any day.
- 7A rotary weight dial that saves as you turn, and a body-weight trend from your logged days.
- 8Supplements as a per-day tick list with reminders.
Maintenance is Mifflin-St Jeor scaled by activity; the forecast is deficit × days ÷ 7,700 kcal per kilogram of fat.
- 1Flow names the dish, then asks for one line of context, "whole bowl, olive oil dressing".
- 2"Get AI Estimate" returns calories, protein, carbs and fat with the assumptions spelled out.
- 3Log Food closes the sheet at once; the card shows "Generating Image" while an illustration is drawn, then fades it in.
Illustrations are generated once per dish name and reused for repeats.
See where the work went.
A twelve-week heat map coloured by muscle, an anatomical figure, and charts that know when the bar did not move.
Progress opens on the movers, the exercises that improved most, each with its own looping render and an estimated-1RM sparkline, above a twelve-week consistency grid where every trained day is striped by muscle group in proportion to its sets. The Heatmap page paints the same data onto a body. Drill from muscle to exercise to equipment for three charts: estimated 1RM, volume, and top reps at your working weight for the weeks the weight stays put.
- 1Consistency grid: 7 × 12 weeks, each day striped by muscle share; tap a day for the breakdown.
- 2Anatomical heat map, tinted by sets per muscle over any range.
- 3Most-improved carousel with the exercise's own video and a from → to.
- 4Per-exercise charts: estimated 1RM, volume (kg, reps, km or minutes) and top reps.
- 5Weekly strength and cardio minutes over twelve weeks with the average drawn across.
- 6Calendar view: a month of body figures, cardio days with GPS routes, and monthly nutrition summaries.
- 7Training frequency per muscle against a recommended target.
Muscle colours in the grid are fixed on purpose, chest is never the accent colour, whatever theme you choose, so the grid reads the same on every palette.
Show up. Sleep. Repeat.
A streak flame that only counts real training days, and last night's sleep next to it.
The flame in the header counts consecutive training days from your history, sets or sessions, never an app open. Hit 7, 14, 30, 50, 100, 200 or 365 and the day pays a 200 XP milestone with a full celebration. A streak-at-risk reminder can nudge you before the day ends. Next to it, last night's sleep from your watch; the Health page adds heart rate, steps, calories and distance by day.
- 1Streak counts training days only, a logged set or a confirmed session, in your local day.
- 2Milestones at 7, 14, 30, 50, 100, 200 and 365 days pay 200 XP each.
- 3Optional push reminders: gym time, streak at risk, and per-supplement.
- 4Sleep badge in the header, with a Health page for heart rate, steps, calories and distance.
- 5Installable as an app on iOS, Android and desktop, full screen, home-screen icon, fast repeat loads.
- 6Nine colour themes in light, dark or system.