Pushup Tracker
푸시업·풀업·스쿼트·플랭크·케틀벨·달리기 기록, 목표·연속·친구와 리그, 그룹·프로그램 제공, 무료 브라우저
오픈소스 근력 트레이닝 트래커: 휴대폰에 세트·반복 기록·리프팅 변화를 확인·본인 기록으로 세션 시작
An open-source strength training tracker: log sets and reps on your phone, see how each lift moves, and start every session from your own numbers.
스포츠·피트니스JavaScript · CSSGitHub @kathishah온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Open-source strength training tracker: offline-first PWA, optional self-hosted AWS sync. Fork it, self-host it, port it.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗An open-source strength training tracker. Log sets and reps on your phone, see how each lift moves, and start every session from your own numbers. The frontend is plain HTML, CSS and JavaScript modules; the optional sync backend uses AWS Cognito, API Gateway, Lambda and private S3 storage.
Project page: https://kathishah.github.io/strength/
Status and stance. In use and maintained (last reviewed October 2026). A solo project shared for reuse: read it, fork it, self-host it, or port it to another platform. Issues are welcome; pull requests for fixes, docs and ports are welcome after an issue, and changes to the product itself belong in your fork (CONTRIBUTING.md). Report vulnerabilities privately (SECURITY.md). MIT licensed, no warranty.
Setup for all three is in the self-hosting guide. Sync runs on AWS today; to run it on Vercel, Cloudflare or another platform, see the porting guide.
The instance at strength.logbook.me is the project owner's private copy. It is not the public demo and not a service for forks: it is not an open signup service, its workout data requires sign-in, and this repository contains no user data or credentials. Run your own copy instead.
The app's own exercise images (app/img/) are third-party media and are not included; the app uses a built-in placeholder when local image files are absent. The demo and the landing page use original animations in demo/media/. To preview the app in local-only mode:
python3 -m http.server 4173 --directory app
Then open http://localhost:4173. See the media rights audit before using the optional image downloader or deploying local media.
Requires Node.js 22 (.nvmrc). Tests use Node's built-in test runner and have no root-level dependencies. They run offline, and CI runs the same command on every push:
node --test
app/: static progressive web app and workout logic. One local event log; it runs in local-only mode, or in synced mode when the deployed config holds sync settings.demo/: the public demo's entry page, sample history and its own exercise art (demo/media/), built on the same app code.index.html, landing/: the project landing page (GitHub Pages).lambda/events/: authenticated event API. Its storage sits behind a small interface, so another store can be swapped in.infra/template.yaml: AWS SAM infrastructure.scripts/: AWS setup, deploy and teardown scripts, plus export, import and image utilities.docs/SELF-HOSTING.md: setup, deployment, backup and teardown.docs/SPEC-strength.md: product behavior and training-program specification.docs/API-CONTRACT.md: the sync API, auth and storage contracts between the app and a backend.docs/PORTING.md and ports/: how to run it on another platform, and where a port goes.docs/SHOWCASE-AND-SELF-HOST-SPEC.md: design of the landing page, demo, local-only mode and self-hosting.DEPLOYMENT-PLAN.md: current high-level hosting and data-flow notes.CONTRIBUTING.md, SECURITY.md: how to contribute, and how to report a vulnerability.journal/: dated log of issues, evaluations, plans and results (rules in journal/README.md).archive/: retired prototype and completed planning records.Per-deployment settings live in a git-ignored private/ folder, so the repository's scripts and docs stay generic.
The original code and documentation in this repository are licensed under the MIT License. This license does not grant rights to third-party exercise images, trademarks, or other external assets (the original animations in demo/media/ are part of the MIT-licensed repository); those remain subject to their respective rights holders and terms. Exercise media is skipped by default; see the media rights audit. The landing page's fonts have their own licenses, in landing/fonts/.