Skip to content

fix(import): read Strong's measurements export as body weight - #591

Open
ConalMullan wants to merge 1 commit into
DuarteSantos8:mainfrom
ConalMullan:fix/strong-import
Open

ConalMullan wants to merge 1 commit into
DuarteSantos8:mainfrom
ConalMullan:fix/strong-import

Conversation

@ConalMullan

Copy link
Copy Markdown

Strong exports body weight as its own CSV, separate from the workouts file:

Date,Measurement Type,Value,Unit,Source
2026-10-12 08:15:25,Weight,114.75,kg,Strong

Settings → Data & backup → Import from another app rejected it as unrecognised, because the weight is in a Value column and the row's kind is in Measurement Type.

What changed

  • parseBodyweight recognises the file by its Measurement Type + Value + Date columns and reads the Weight rows only. Other measurement types (body fat, waist…) are skipped.
  • Each row is converted from its own Unit (kg / lbs), the way the Apple Health branch already handles mixed units (fix(import): convert Apple Health weights per record #432).
  • The import sheet says "Import from Strong" for this file. Before, every body-weight import was labelled Apple Health.
  • docs/DATA_IMPORTS.md mentions the file.

Tests: three cases in import-bodyweight.test.js: weight rows only, a per-row unit, and a file with no weight rows. Full frontend suite passes locally (5063). I also checked it against a real Strong 6 export with 48 weigh-ins.

Related: #504 handles the rest-timer rows in the workouts export. This PR doesn't touch that file's parsing, so the two don't overlap.

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

All contributors have signed the CLA. Thank you!
Posted by the CLA Assistant Lite bot.

@ConalMullan

Copy link
Copy Markdown
Author

I have read the CLA Document and I hereby sign the CLA

Strong exports body weight in a separate file (Date, Measurement Type,
Value, Unit, Source) that the importer rejected as unrecognised. Read its
Weight rows, each in its own unit, and skip the other measurement types.
The import sheet now says "Import from Strong" for it instead of Apple
Health.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
github-actions Bot added a commit that referenced this pull request Oct 13, 2026
ConalMullan added a commit to ConalMullan/openGym that referenced this pull request Oct 13, 2026
@ivenos

ivenos commented Oct 15, 2026

Copy link
Copy Markdown

Another shape of Strong's measurements export, in case it's worth covering here: mine came as strong_measurements_<date>.zip with one CSV per measurement, and the headers follow the app language. weight.csv:

"Date";"Gewicht (kg)"
"2022-12-02 09:02:49";97.0

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants