[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f3av4beqzs2la":3},{"code":4,"message":5,"data":6,"timestamp":51},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":21,"summary_md":22,"topic":23,"github_topics":26,"license":47,"homepage":48,"updated_at":49,"history":50},"DuarteSantos8\u002FopenGym",5,"Open-source gym & body-weight tracker, now in the App Store (iPhone + Apple Watch) and as an Android APK. Plan routines, log workouts, see which muscles are trained, import from Strong\u002FHevy\u002FFitNotes. Self-host it or use it on the phone alone.","JavaScript",15408,2026,13954,97,[16],{"id":17,"title":18,"points":19,"comments":19,"posted_at":20},49814241,"OpenGym, A self-hosted gym and body-weight tracker (AGPL)",1,"2026-09-23","A self-hosted workout and body-weight tracker for people who lift, keeping training data in a folder they control.","## The problem\nSerious lifters end up with years of training history inside a closed app: a subscription, a company server, and no way to move. When the app shuts down or changes pricing, the data is stranded. openGym is the same kind of product — plan routines, run guided sessions, log sets and body weight — but designed to be hosted on your own machine with data you can export.\n\n## What's different\nCompared with mainstream tracking apps, the obvious trade-off is operational: you run it, and the README leans on that rather than on feature parity claims. What actually stands out is the depth of training logic — per-routine or per-exercise progression rules (linear, Greyskull, double and triple progression) with explicit deload and stall handling, plate math from the plates you own, and a muscle map that shows volume, recovery and gaps. The import path from FitNotes, Strong, Hevy and Apple Health, plus one-file JSON export, is the part that lowers the switching cost. Sync is built around per-profile records with field-level merge, so two devices editing at once don't overwrite each other — unusual for a self-hosted hobby project.\n\n## Who it's for\nPeople who already use a bar or dumbbells several times a week, are comfortable running a container, and care about owning their history. It suits lifters who want programmability — progression schemes, supersets, drop sets — over social feeds or coach marketplaces. Anyone unwilling to run a server should use the App Store or Android builds and treat it as a standalone phone app; anyone wanting coaching, diet tracking or a social community should look elsewhere, since none of that is in scope here.\n\n## Cost of adoption\nYou need a host with Docker and the willingness to keep it patched, or you use the iOS App Store release and Android APK as an offline-capable standalone. There is a live demo to try first. The license is AGPL-3.0, which matters if you plan to modify and run it as a network service. The README is thorough on features but says little about hardware requirements, backup strategy or upgrade migrations; treat operational maturity as unproven and test restores before trusting it with years of history. The exercise library is large but its accuracy is not something the README lets you verify.\n\n## Verdict\nThis is a very young project — created in July 2026, and it has pulled roughly 14,000 stars in a single month, landing at #5 on the monthly JavaScript board, while the Hacker News thread drew almost no attention. That pattern says a trend hit, not yet an established product. The engineering signals (CI, test coverage, App Store presence, structured sync) are stronger than most 90-day-old repos, which is a point in its favour. But for a tracker you'll rely on for years, the right move is to run it on a box you back up, import a small piece of history, and only commit once export and restore have been tested by you.",{"slug":24,"name":25},"productivity","Productivity & Utilities",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"apple-watch","bodyweight","docker","fitness","fitness-tracker","gym","health","ios","mcp","nodejs","passkeys","progressive-web-applications","pwa","react","self-hosted","self-hosting","vite","webauthn","weightlifting","workout-tracker","AGPL-3.0","https:\u002F\u002Fopengym.ch","2026-10-24T14:36:14Z",[],1792864233]