24-week program · weekdays fit a 30-min break · weekends carry the distance

Progress

ProgramWeek — of 24
Weight83 → 75 kg

Stats

Weight log (weekly · Saturday morning · after toilet, before breakfast)

Judge the 2-week trend, never one reading. Flat for 3 weeks → audit oil + night snacks first, then trim ~100 kcal (half a roti at lunch). Recheck calories at 78 kg — maintenance drops as you shrink.

☁️ Cloud sync — not configured (saving in this browser only)

Syncs week progress, weight log and reminder settings to your Firebase Realtime Database so phone, laptop and the Pi stay in step. If you set this up in the old single-file app, the same URL and path are already filled in below. Setup (~3 min, free):

  1. console.firebase.google.com → Add project (Analytics off).
  2. Build → Realtime Database → Create database → start in test mode.
  3. Paste the database URL below (looks like https://yourproject-default-rtdb.firebaseio.com).
  4. Pick a long random path name — treat it like a password.

⚠ Test mode means anyone who knows both the URL and your path can read/write it — keep the path long and random. The data is only workout ticks and weigh-ins. This page never asks for passwords or keys.

🔔 Reminders

1 · In-page reminders — banner + sound (and a system notification where the browser allows) at each time below, while any page of this site is open in a tab. Keep one pinned on the work laptop and it covers your whole 9:20 am – 1:00 am day.

2 · Phone reminders that always fire — download the calendar file and import into Google/Apple Calendar. Every reminder becomes a recurring event with an alert — no open tab needed.

3 · WhatsApp/SMS — the companion reminder-server (Node, runs on the Pi) reads the same Firebase database and messages your phone directly with the current week's session. See its README.

Times are editable and each reminder can be switched off — changes save and sync automatically. Re-download the calendar file after editing. System notifications require https or localhost; on http://192.168.… the page uses its banner + sound instead.

Danger zone