← all repositories
the-momentum/open-wearables

One API to sync your Garmin, Apple Watch, and existential dread

Self-hosted platform that normalizes wearable data so you don't have to wrestle with nine different OAuth flows.

1.8k stars Python Domain AppsData Tooling
open-wearables
Velocity · 7d
+8.3
★ / day
Trend
steady
star history

What it does Open Wearables is a self-hosted FastAPI backend with a React frontend that pulls health data from wearables—Garmin, Polar, Suunto, and via mobile SDKs, Apple HealthKit, Samsung Health, and Google Health Connect—and serves it through one normalized REST API. You run it yourself, so the data stays in your infrastructure rather than wandering off to someone else’s cloud.

The interesting bit The project treats “AI-powered health insights” as a first-class feature, not an afterthought: natural-language automations for webhook alerts, an AI health assistant for querying your own metrics, and human-in-the-loop feedback to correct misinterpretations. It’s ambitious, and most of it is marked “coming soon.”

Key highlights

  • Single-tenant by design: one deployment, one organization, no multi-tenancy spaghetti
  • Mobile SDKs for iOS, Android, Flutter, and React Native push on-device health data to your instance
  • Docker Compose startup; self-contained auth with auto-generated admin account
  • Interactive Swagger docs at /docs
  • MIT licensed, with a Discord community and explicit call for contributors

Caveats

  • The “available” feature list is short: only Garmin, Polar, and Suunto have working OAuth and workout sync; the broader provider list (Oura, Whoop, Strava, Fitbit, etc.) is aspirational
  • Core health data endpoints, AI automations, widgets, and the AI Health Assistant are all “in development” or “coming soon”
  • The README itself warns: “early-stage project under active development. APIs may change before version 1.0”

Verdict Worth watching if you’re building a health app and want to self-host, but only viable today if your users are on Garmin, Polar, or Suunto. Everyone else should bookmark it and check back in a few months—or contribute to close the gaps.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.