Skip to content

v1.1.2

Choose a tag to compare

@DuarteSantos8 DuarteSantos8 released this 21 Jul 22:52

Changelog

v1.1.2 — 2026-07-22

Custom exercises, full localization, and input fixes.

Custom exercises (#11)

  • Create your own exercise from the exercise picker or the Exercises tab: a name and a
    body part is all it takes. Your search text is pre-filled as the name, so "no match" flows
    straight into "create it".
  • 📝 Optional description — setup, cues, anything you want to remember. It shows on the
    exercise's detail and config sheets (where a built-in exercise would show its animation),
    and it's searchable, so you can find your own exercises by their cues too.
  • 🏋️ Custom exercises behave like built-in ones everywhere — routines, supersets, workout
    logging, weight suggestions, PRs, stats and history. The animation stays blank by design.
  • 🏃 Pick the cardio body part and it logs time + speed instead of weight × reps, like the
    built-in cardio exercises.
  • ✏️ Edit (rename, change body part or description) or delete your custom exercises — from
    their detail sheet in the Exercises tab, or straight from the exercise inside a routine via
    "Edit or delete this exercise". Deleting removes them from your routines; already-logged
    workouts keep their sets and still show the exercise name. (The routine sheet's old "Remove
    exercise" button is now labelled "Remove from routine", so the two are no longer confusable.)

Localization (#7)

  • 🌍 12 UI languages: English, Deutsch, Español, Français, Italiano, Português, Polski,
    Türkçe, Русский, 中文, 한국어, हिन्दी. Pick yours under Settings → Appearance → Language;
    the choice syncs with your profile like the theme does.
  • 📖 Localized exercise instructions for 10 of those languages (all except German and
    Portuguese, which the upstream dataset doesn't cover yet — those fall back to English),
    covering all 1,324 exercises. Body-part filters, equipment and muscle tags are translated
    too; exercise names stay English (upstream limitation). Custom exercises are translated too.
  • 📅 Dates, weekday and month labels follow the selected language.
  • ⚡ Zero cost when unused: the app still ships English-only by default. Each UI language is a
    ~7 kB chunk and each instruction pack ~80–120 kB (gzipped), downloaded only when you switch —
    the initial bundle size is unchanged.
  • 🛠️ New scripts/build-instructions.mjs regenerates the instruction packs from the upstream
    dataset; translations live in frontend/src/locales/ (PRs welcome — it's one flat
    English-string → translation map per language).
  • Known gaps: push notification texts (sent by the server) and plural forms in some languages
    are approximated; happy to take corrections from native speakers.

Fixes

  • ⌨️ Weight and other numeric fields now accept a comma as decimal separator ("33,5") — iOS
    decimal keyboards in many locales only offer a comma, which previously reset the field to 0.
    Partial input like "33," no longer snaps to 0 while typing. (#13)
  • 📱 Fixed the exercise-config sheet (Sets / Reps / Weight, and the cardio variant) overflowing the
    screen edge on narrow phones — the Weight stepper was clipped and could make the whole page pan
    sideways in iOS Safari. Steppers now shrink to fit the viewport. (#10)
  • 🛡️ Added a global horizontal-overflow guard so a single too-wide element can no longer knock the
    page layout off-scale.