For devs who ship code daily and themselves never ๐Ÿ›‹๏ธ

No workout?
No Claude Code.

fit-or-die connects your fitness tracker to your terminal. Hit your own weekly workout goal and code all you want. Fall behind, and Claude goes on strike until you move. You chose this. Remember that.

โœ” One-time payment, yours forever  ยท  โœ” 30-day money-back guarantee

~/side-project-#47
โžœ claude

โ›” BLOCKED by fit-or-die

  You promised yourself 3 workouts this week.
  It's Thursday. You've done 1.

  This week   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  1/3 workouts
  Streak      ๐Ÿ”ฅ 6 weeks (dies in ~14h)

  Go lift something heavier than your technical debt.

  โ†’ 2 workouts to unlock

  fit check              just trained? force a sync
  fit unlock --emergency it works. your streak will remember.

โžœ 

Exhibit A

Proof it works:
this actual madman.

Same laptop. Same MRR obsession. Suspiciously better deltoids. If Marc Lou can ship code AND abs, your excuse just got deprecated.

Not simulated. Terrifyingly real. Marc Lou's before-and-after transformation: soft and hunched on the left, flexing and shredded on the right
Marc Lou, indie hacker before → after · same guy, more push-ups

The transformation is documented. fit-or-die just makes it non-optional: hit your weekly workouts or the terminal that ships your empire goes dark.

Photo used with the founder's blessing. Yes, that's really him.

How it works

Your goal. Your data. Your problem.

Nobody assigns you anything. You set the bar, your watch keeps the score, and your terminal enforces the deal you made with yourself.

1

Set your own goal

3 workouts a week. 4. Whatever you decide. fit-or-die tracks your pace through the week, so Thursday-with-zero-workouts you gets caught early, not on Sunday night.

2

Connect your wearable

Real workouts from your actual watch. No self-reporting, no honor system, no "I totally ran today". If it's not on the tracker, it didn't happen.

3

Code or sweat

On pace? Claude works like nothing's there. Behind? Blocked until you move. Just trained? fit check syncs on the spot and lets you back in.

Apple Watch Garmin Whoop Oura Strava Fitbit

One connection via Open Wearables, the open-source layer that unifies them all.

Built for real life

Your escape routes,
ranked by dignity.

Sometimes the sync is late, sometimes life happens, and sometimes you simply choose cowardice. All supported. And you define what counts as a workout: default is any tracked 20+ minutes, configurable to your taste.

fit checkBest
"I literally just worked out."

Forces a fresh sync from your wearable right now, plus a grace window while slow data finds its shoes. We block slackers, not victims of sync latency.

fit pauseValid
"My ankle has unionized."

Sick, injured, traveling? Goal and streak freeze, no guilt tax. This is a commitment device, not a punishment device. Rest is training too.

fit unlock --emergencyโ˜ ๏ธ
"I accept the consequences."

Instant access, always. Your streak dies, it's logged forever, and your squad gets the news. Freedom has a price. The price is shame.

Squads

Shame is a feature. Invite friends.

Solo willpower is cute. A squad is effective. Team up with your coworkers: everyone sees the week's scoreboard, and everyone gets notified when someone smashes the emergency glass.

Squad dispatchesIllustrative jokes
๐Ÿซฃ

Emergency unlock used. Reason: "production is on fire." Plot twist: it was a side project.

you, probably ยท streak reset to 0
๐Ÿงฏ

Emergency unlock used. One calendar had meetings. The other had leg day.

your future self ยท squad notified
๐Ÿชฆ

Streak pronounced dead. Cause: "just one quick prompt."

the tiny coroner in your terminal ยท logged forever

Pricing

Cheaper than the gym
membership you don't use.

One payment. Yours forever. No subscription to forget to cancel, unlike that gym.

One-time payment๐Ÿ’€
$29$19

Pay once. Locked in for life.

  • The full lock on Claude Code
  • Unlimited goals & every wearable
  • Streaks, pace tracking & full history
  • Squads, leaderboard & shame notifications
  • Emergency unlocks (logged forever)
  • macOS, Windows & Linux
  • 1 year of updates included
  • 30-day money-back guarantee
Get fit-or-die for $19

Launch price. Goes up to $29 soon. ๐Ÿ’€

Yes, you can bypass it.

You're a developer with filesystem access. Congratulations on defeating software you installed yourself. fit-or-die is a commitment device, not a prison. The DRM is your own shame, and fit unlock --emergency makes the honest exit faster than cheating. Bypassing the lock takes 10 seconds. Explaining it in the group chat is cardio.

FAQ

Questions from people
looking for a loophole.

I worked out this morning and I'm still blocked. Fix?

Run fit check. It forces a fresh sync from your wearable instead of waiting for the platform's lazy schedule. There's also a grace window, so a workout always counts for its day even if the data arrives late. We block slackers, not victims of sync latency.

What if production is on fire and I'm 2 workouts behind?

fit unlock --emergency. Instant, unlimited, always available. Your streak dies, it's logged in your history, and if you're in a squad, everyone gets a notification. Save prod. Face the consequences.

What counts as a workout?

By default: any workout of 20+ minutes recorded by your tracker. You can tune it (duration, activity types, step-based goals). What you can't do is type it in manually. Your watch is the referee.

Which trackers work?

Apple Watch (via Apple Health), Garmin, Whoop, Oura, Strava and Fitbit, all through one connection with Open Wearables, an open-source platform that unifies wearable data into a single API.

Do you sell my health data?

No. We read the bare minimum to answer one question: "did you move enough this week?" No feeds, no ads, no data brokers. Your resting heart rate is between you and your watch.

Why would I do this to myself?

Because you've had a gym membership since January. Because "I'll go after this one PR" is a lie with 14 open tabs. Because external pressure works and you know it. You've tried being nice to yourself. Try this.

Setup

Two minutes to
your first block.

We host the backend and the wearable sync. You install a tiny CLI, connect your watch, and arm the lock. No servers, no Docker, nothing to deploy.

$ fit setup           # your account, your goal
$ fit connect strava  # or garmin, whoop, oura, fitbit...
$ fit hook install    # arm the lock on Claude Code
$ claude              # good luck ๐Ÿ’ช

Backend and wearable sync fully managed. You just move.

Your move,
keyboard athlete.

Set a goal. Connect your watch. Let your terminal keep you honest.

Get fit or die coding ๐Ÿ’€