Capacitor and Cordova health plugins
4 packages (4 npm) · 1 comparison · registries read 2026-10-03 · README notes checked 2026-10-03
Every Capacitor and Cordova package on this list
Read from the registries and repositories by a script, not typed by hand. Release dates are shown as dates, with the gap to our read, rather than as a verdict on whether a project is alive; what each README says about its own status is under How to choose and on each package page.
| Package | Connects to | Repository | Latest release | Licence | Registry status | Last commit |
|---|---|---|---|---|---|---|
| capacitor-healthnpm · JavaScript | Apple HealthKit, Health Connect | mley/capacitor-health | 8.4.0, 2026-09-2310 days before our read | MIT | — | 2026-09-23default branch, read 2026-10-03 |
| @capgo/capacitor-healthnpm · JavaScript | Apple HealthKit, Health Connect | Cap-go/capacitor-health | 8.11.4, 2026-09-2211 days before our read | MPL-2.0 | — | 2026-09-22default branch, read 2026-10-03 |
| @perfood/capacitor-healthkitnpm · JavaScript | Apple HealthKit | perfood/capacitor-healthkit | 1.3.2, 2025-02-13597 days before our read | MIT | — | 2025-02-13default branch, read 2026-10-03 |
| cordova-plugin-healthnpm · JavaScript | Apple HealthKit, Health Connect | dariosalvi78/cordova-plugin-health | 3.3.0, 2026-09-267 days before our read | MIT | — | 2026-10-03default branch, read 2026-10-03 |
Versions, dates and licences read from npm on 2026-10-03; last-commit dates read by git on 2026-10-03; archive flags from the GitHub API, read 2026-10-03. This data records no download counts, so the table has no downloads column. Repository is the GitHub owner and name as GitHub reports it, which is how the data names a maintainer.
How to choose: our reading
Judgement, labelled as such, drawn only from the README notes and registry facts on each package’s page and from the comparisons. No package is ranked first.
capacitor-health or @capgo/capacitor-health
capacitor-health · @capgo/capacitor-health
- Your organisation keeps a licence allow-list: compare the Licence column above first. Different licences carry different obligations, and that decision belongs to whoever owns your licence policy, not to a feature table.
- You chart hourly data on Android: capacitor-health's README documents day-only buckets there, so plan to bucket raw records yourself; @capgo/capacitor-health's README lists the types it cannot aggregate at all.
- You need Health Connect history beyond the default window: @capgo/capacitor-health documents a requestHistoryAccess option for it, and capacitor-health's README says its queries do not request that permission.
- Check that the plugin's peer dependency matches your Capacitor major before either one.
Cordova, or Capacitor with manual steps
- cordova-plugin-health installs with cordova plugin add. Its README's Capacitor section, written against plugin v3.1.0 and @capacitor/android 5.5.1, lists the manifest and Gradle changes Capacitor does not apply for you.
- It adds no Health Connect permissions: declare each data type's permission in AndroidManifest.xml yourself, preferably through config.xml, and add the privacypolicy.html page the plugin shows when Health Connect asks for one.
- Version 3 rewrote the Android side for Health Connect and dropped Google Fit; the README points anyone who still needs Fit to version 2.1.1.
iOS only
- @perfood/capacitor-healthkit covers Apple Health on iOS only. Its latest stable release declares a peer dependency of @capacitor/core ^4.0.0, so check that against your Capacitor version before adopting it.
- Its README says pull requests to the main branch are no longer accepted and that v2 is published as an alpha on npm.
Platform rules these packages inherit
A wrapper inherits every rule of the API it calls. Each rule below is stated, with its sources, on the page it links.
HealthKit data lives only on Apple devices and is read by app code on the device: Apple's setup has no tokens and no server endpoint. On Android, an app integrates Health Connect separately.
HealthKit never tells an app whether the user granted read access: a denied read looks exactly like no data, whichever wrapper makes the query.
Health Connect is Android-only and on-device, not an OAuth cloud API. It is part of the platform from Android 14; on Android 13 and lower it is a separate app the user installs from the Play Store.
By default an app can read Health Connect data from up to 30 days before its first permission grant; reading further back needs the history permission.
Shipping on Google Play needs the Play Console Health apps declaration, listing every data type the app reads or writes.
Side-by-side comparisons
The APIs underneath
The pages these packages’ own pages point to for the API each one wraps.
Questions
- Which Capacitor plugins read both HealthKit and Health Connect?
- capacitor-health and @capgo/capacitor-health, whose package metadata declares iOS and Android native code, and cordova-plugin-health, a Cordova plugin whose README documents manual steps for Capacitor projects. @perfood/capacitor-healthkit covers Apple Health on iOS only.
- Do Capacitor health plugins declare the Health Connect permissions for you?
- It depends on the plugin. cordova-plugin-health's README says it will not add permissions for the data types you need, so each one is declared by hand. @capgo/capacitor-health's README says its manifest already declares the permissions for the basic data types. capacitor-health's README warns that Health Connect shows every declared permission on the consent screen, so declare only what you request.
- Which licences do the Capacitor and Cordova health plugins use?
- As each package's npm metadata states it: capacitor-health MIT, @capgo/capacitor-health MPL-2.0, @perfood/capacitor-healthkit MIT, cordova-plugin-health MIT. Different licences carry different obligations, and that decision belongs to whoever owns your licence policy.
Registry facts read by scripts/fetch-libraries.mjs on 2026-10-03; README notes checked on 2026-10-03. README quotes and notes are each project's own statements; the selection, grouping and reading are AIFitnessAPI's, which publishes none of these packages.