@armsteadj1/whoop-sync
v1.0.0
Published
Syncs Whoop workout, sleep, and cycle data to a local SQLite database.
Readme
whoop-sync
Syncs Whoop workout, sleep, and cycle data to a local SQLite database.
Setup
Copy
config.example.jsontoconfig.jsonand fill in your credentials:{ "access_token": "your-whoop-access-token" }Install dependencies:
npm install
Usage
Incremental sync (only fetches new data since last sync):
npm run syncFull sync (fetches all available history):
npm run sync -- --fullDatabase
Data is stored in fitness.db (SQLite) with tables:
workouts— workout sessions with strain, HR zones, etc.sleep— sleep sessions with HRV, performance %, resting HRcycles— daily physiological cyclessync_state— tracks last sync timestamps for incremental syncs
Notes
- If the access token is expired (401), the tool logs a warning and exits cleanly (exit code 0).
- No OAuth flow is implemented — supply a valid token in
config.json.
