Free · Open source · No account needed

Every rep logged.
Even with no signal.

IronTrack is a workout tracker for people who train with a plan. It installs from your browser, saves every set the moment you tap it, and tells you what to lift next session. Nutrition targets, recovery tracking and sync across your devices are built in.

Works
Offline, every time
Runs on
iOS · Android · Desktop
Your data
JSON & CSV export

What it does

Four things your notes app can't do between sets.

  1. 01Offline-first
  2. 02Progression
  3. 03Nutrition
  4. 04Privacy & sync

01 · Offline-first

Basement gym, dead zone, airplane mode. It still saves.

Every set is written to your phone the moment you tap it, so there's no loading spinner between you and the next rep. When you're back online, changes upload in the background and reach your other devices in seconds. Close the app mid-workout and your session is still there when you reopen it.

  • ✓Logging never waits on the network
  • ✓An unfinished session survives a reload or the phone closing the app
  • ✓Launches with no connection after the first visit

Try it: log a set offline

Turn the network off, log a few sets, then turn it back on.

Nothing waiting to sync
  1. Set 1 · 82.5 kg × 10Synced

A simulation of the app's behavior. Nothing here leaves your browser.

02 · Smart double progression

Walk in knowing the number.

IronTrack reads your last session on the same equipment and suggests today's weight. Hit the top of the rep range on every working set and it adds about 2.5%. Inside the range, aim for one more rep. Most sets short of the range at failure, and it drops about 5%. One tap fills the weight in.

  • ✓Last time's numbers next to every set
  • ✓PR and ↑ Beat last time badges as you finish sets
  • ✓Estimated 1RM, RIR and set tags (warm-up, drop set, failure)
  • ✓Supersets, saved set presets and a rest timer that beeps

Last session → today

SetkgRepsRIR

The same rule the app uses, running in your browser. Suggestions are estimates, not a coach's prescription: pick a weight you can lift with good form.

03 · Nutrition & recovery

Targets that follow your body weight.

Set a goal (lose, maintain or build) and a weekly rate. IronTrack works out your calories and macros from your profile, gives training days a little more, and scales the meal plan to fit. Log your weight and it charts a 7-day average. If the trend drifts from your goal, it suggests a calorie change you can apply with one tap.

  • ✓Daily log for food, water and body weight
  • ✓Editable meal plans and your own foods
  • ✓Pre- and post-workout meal timing from your usual training time
  • ✓A muscle recovery map and weekly volume per muscle group

Today's target

2,760 kcal

Protein144 g
Carbs373 g
Fat77 g

Example: 30 years, 80 kg, 180 cm, moderately active, maintaining.

Muscle recovery

  • Chesttoday
  • Shoulderstoday
  • Legs2d ago
  • Back4d ago
  • Arms4d ago

Red: trained in the last day. Amber: recovering. Green: ready.

04 · Privacy & cloud sync

Sign in only if you want sync.

Without an account, everything stays on your device. Sign in with email and password and your log follows you between phone, tablet and laptop. The database only lets each account read and write its own rows. Export your history as JSON or CSV, or take a full backup, whenever you like.

  • ✓Sessions logged on two devices while offline are both kept
  • ✓Signing out on a shared device clears that account's data from it
  • ✓No ads and no tracking scripts

Your devices

  • 📱 Phone · logged Push DaySynced
  • 💻 Laptop · got it 2 s laterSynced
  • 📟 Tablet · offline since MondayCatches up when online

Export

.json · .csv

Backup

Full restore

Inside the app

Made for one hand, between sets.

Big tap targets, one exercise open at a time, and the next one opens when you finish.

Nutrition. Targets, meal timing and the daily log.
Analytics. Volume, 1RM trends and recovery.
Tools. Plates, 1RM, TDEE and a stats card to share.

Illustrations of the app's screens with example numbers.

How it works

Built for lifters. Engineered for speed.

The phone is the source of truth. The cloud is a copy that keeps your devices in step.

  1. You tap ✓

    Set saved on device

    IndexedDB, instantly

  2. 0.8 s later, if online

    Only changes upload

    One row per session

  3. Supabase

    Postgres + Realtime

    Row-level security

  4. Your other devices

    Pull and merge

    Nothing overwritten

LOCAL-FIRST

IndexedDB, not a loading spinner

Workout history and the nutrition log live in IndexedDB on your device, with no 5 MB cap. Reads come from memory, so screens render instantly.

NO FRAMEWORK

Vanilla JavaScript, three dependencies

Plain ES modules bundled by Vite. The only runtime libraries are the Supabase client, an icon set and confetti for your PRs.

SERVICE WORKER

The whole app is cached on install

Every file in the build is precached, so the app opens with no connection. Updates download only the files that changed.

SYNC THAT MERGES

Conflicts resolved, not lost

Sessions merge by id, deletions sync as tombstones, and the server sets timestamps, so a phone with the wrong clock can't hide a change.

Install

On your home screen in three taps.

No app store. Open the app in your browser, add it once, and it launches full screen like any other app.

iPhone & iPad

Safari

  1. 1Open the app in Safari.
  2. 2Tap Share in the toolbar.
  3. 3Choose Add to Home Screen, then Add.

Android

Chrome

  1. 1Open the app in Chrome.
  2. 2Tap the ⋮ menu in the top corner.
  3. 3Tap Install app, then Install.

Or open Settings in the app and tap Install IronTrack.

Desktop

Chrome or Edge

  1. 1Open the app in Chrome or Edge.
  2. 2Click the install icon at the right of the address bar.
  3. 3Click Install. It opens in its own window.

Or open Settings in the app and tap Install IronTrack.

FAQ

Questions lifters ask.

Something else? Open an issue on GitHub.

Does it really work offline?

Yes. After your first visit the whole app is stored on your device. You can open it, log a full session, edit your plan and check your history with no connection. Changes upload when you're back online.

How does sync between devices work?

Sign in with the same email on each device. Changes upload within a second of your last edit and other devices pick them up right away, or when they next come online. If two devices log sessions while out of touch, both sessions are kept. A deletion always syncs.

Do I need an account?

No. Tap Continue without an account and everything stays on your device. You can sign in later from your profile to start syncing.

Who can see my data?

Without an account, nobody: your workouts and logs never leave your device. With an account, your data is stored in Supabase, and row-level security lets only your account read or write it. There are no ads or tracking scripts. The privacy policy has the details.

What does it cost? Is it open source?

IronTrack is free to use today. Logging workouts, offline use, your history and exports stay free. Optional paid extras, such as tools for coaches, may come later. You'll see the price before you pay for anything, and nothing you use now will move behind a paywall.

The source code is on GitHub under the MIT license, so you can also host your own copy with your own Supabase project.

Can I get my data out?

Any time. Settings exports your workout history as JSON or CSV, and a full backup you can import on another device.

Does it work on iPhone?

Yes. Add it to your home screen from Safari and it runs full screen, offline included. iPhones don't let web apps vibrate, so the rest timer beeps instead.

Your next session starts here.

Free. Works offline. Takes ten seconds to open.