-
-
Press Start
-
Today's plan, built on your phone: upper body, lower body and core spread across the day.
-
Mid-burst. Rick shows the move and the countdown does the clock-watching for you.
-
Minute done. Log your reps if you want to, or skip it and get back to work.
-
Onboarding: crushed. Your plan is set and your first break is already on the schedule.
-
Progress: sets done, strength vs cardio and which body areas you've hit.
-
Workout settings: difficulty per body area, focus areas, a cardio finisher and injury filters.
-
Logo
I Built This for Me
I write code for a living, which mostly means sitting. So a while back I started doing short bursts of exercise during the day: get up, move hard for about a minute, sit back down. It worked great whenever I actually did it.
The doing was the problem. First, I kept forgetting. I'd tell myself I'd get up again in an hour and then just... not. Second, it got boring, and boring in a very specific way, because every single time I had to decide what to do. Here's roughly how that went:
"OK, exercise time. Squats? I did squats last time. Did I? I think I did squats the last three times. Fine, push-ups. On this carpet? No. Jumping jacks. Great. Go! How long has it been? Eleven seconds. That can't be right."
And then I'd stand there watching the clock like a microwave burrito I didn't trust.
But in all seriousness, none of those steps is hard on its own. Stacked up three or four times a day, though, they were just enough friction that it kept not happening. So I built the thing I wanted: an app that remembers for me, picks the exercise for me and counts for me. You don't have to think. You get a notification, you're gone for about a minute and then you're back to work.
The research, it turns out, is on my side. When people drop short exercise breaks, the reason they give most often isn't motivation or time. It's forgetting.
What It Does
You pick your work window (9 to 6 by default) and how often you want to move. When it's time, your phone pings. Tap it and your coach (Rick or Pam, my two cel-shaded 80s cartoon characters; you pick) shows you exactly what to do. A countdown runs and audio cues tell you when to go and when to stop, so you never have to look at a clock again. Bursts run about a minute by default; make them shorter or longer, and drag the work/rest split until it feels right.
Every day gets its own plan, built right on your phone: upper body, lower body and core spread across the day, or just cardio, or just legs if that's your thing. It knows what works at an office (standing only, nothing with your back on the floor, nothing with your hands on the floor, because nobody wants to do push-ups on the carpet next to the printer). It skips anything that clashes with injuries you've told it about. Difficulty runs Rookie, Amateur, Pro, Elite, Legend, so you start where you are and climb from there. Streaks, stats and an end-of-day recap keep score.
The free tier isn't a trial; it's 11 exercises (squats, push-ups, planks, jumping jacks, high knees and easier versions for when you're just starting out) that never expire. Premium gets you the full library, which grows every week, plus more control over your daily plan, for $0.99 a week or $39.99 a year with a 3-day free trial.
Why It Works
So what does a minute of jumping jacks actually do for you? More than you'd think.
Start with mood. Short movement breaks through the workday have been shown to cut fatigue and lift mood, so you go back to your desk feeling better than when you left it. It keeps you sharp, too. Sitting still slowly turns down blood flow to your brain and frequent short breaks keep it up; in a published study on office workers, a few short bursts a day made people better on attention tests.
And then there's the afternoon slump. You eat lunch, you sit still and your blood sugar climbs with nowhere to go. That's the 2pm fog. Get up and move, and your muscles start pulling that sugar out of your blood on their own, which makes the crash a lot softer.
If you already go to the gym, I have bad news. In a published study on adults, an hour of hard cycling didn't make up for sitting the rest of the day; moving a little, often, did better.
Why about a minute? A 2024 study found adults need a little over a minute of brisk effort to reach vigorous intensity. Much shorter and you're mostly just standing up.
How I Built It
OneMinFit is Flutter, one codebase for iOS and Android, with Riverpod code generation, freezed and a strict Repository pattern (so I can swap the backend later without touching the UI). Firebase handles accounts and sync. The reminders are local notifications, so your schedule never waits on a server. RevenueCat runs subscriptions, and the app reads the premium entitlement straight from RevenueCat instead of mirroring it into the database.
The daily plan comes from an exercise engine that's a pure function: the exercise database, your preferences and your subscription tier go in, and a day's plan comes out. It runs offline and it's deterministic, which makes it very easy to test. The database has over 150 bodyweight exercises tagged by muscle group, position, difficulty and injury conditions. An exercise switches on once its demo video is done, through a data change, no app release required.
Challenges: The Rick and Pam Problem
The hardest part of the whole project was getting Rick and Pam to actually do the exercises. Every move is a looping animation of one of them, cel-shaded and very 80s, and every single one took many iterations before the animation looked right. A squat, it turns out, is a lot harder to animate than it is to do.
Oh, and iOS only lets an app hold 64 pending notifications. That's a very real number when your whole product is a notification.
What I Learned
Building an app for yourself makes product decisions easy, because every feature is a fix for the exact reason you stopped. The reminder is there because I forget. The daily plan is there because I got tired of deciding. The countdown and audio cues exist because of the burrito situation.
What's Next
New moves every week. Next up are the standing staples (lunges, split squats, punches, mountain climbers), then a seated set so the "sitting only" filter can finally switch on, and then dumbbells.


Log in or sign up for Devpost to join the conversation.