Library comparison
react-native-health vs @kingstinct/react-native-healthkit
Registry data read 2026-10-03
Both packages bridge React Native to Apple HealthKit on iOS and neither covers Android. react-native-health is callback-based with its own permission constants, and its README has said since August 2023 that new features are on hold; its latest npm release is from October 2024. @kingstinct/react-native-healthkit is promise- and hook-based, uses Apple's identifier strings, requires react-native-nitro-modules, and published 16.0.0 in September 2026.
Side by side
Every cell is read from the registries and the repositories by a script. There is no winner row.
| Fact | react-native-health | @kingstinct/react-native-healthkit |
|---|---|---|
| Registry | npm: react-native-health | npm: @kingstinct/react-native-healthkit |
| Latest version | 1.19.0 | 16.0.0 |
| Latest published | 2024-10-15 (718 days before our 2026-10-03 read) | 2026-09-18 (15 days before our 2026-10-03 read) |
| First published | 2020-09-21 | 2019-02-19 |
| Versions published | 40 | 101 |
| Licence | MIT (package.json license) | MIT (package.json license) |
| Platforms | not stated in registry metadata | not stated in registry metadata |
| Requires | react-native >=0.67.3 (package.json peerDependencies) | react >=19; react-native >=0.79; react-native-nitro-modules >=0.35 (package.json peerDependencies) |
| Deprecated | no deprecation in the registry | no deprecation in the registry |
| Status classifier | — | — |
| Last commit, default branch | 2024-10-15 | 2026-10-02 |
| GitHub stars / archived | 1163 stars · not archived (read 2026-10-03) | 715 stars · not archived (read 2026-10-03) |
What each README says
react-native-health
@kingstinct/react-native-healthkit
Types are Apple's own identifier strings, such as
HKQuantityTypeIdentifierHeartRate, with promises and React hooks (useHealthkitAuthorization,useMostRecentQuantitySample).Source: README
Reading before requesting authorization crashes the app, per the README; anchored queries return deleted samples for sync.
Source: README
How to choose: our reading
Judgement, labelled as such, drawn only from the facts above.
- Your app is on an older React Native version: check the Requires row first. @kingstinct/react-native-healthkit's latest release declares react-native >=0.79 and react >=19; react-native-health's declares react-native >=0.67.3.
- You need HealthKit types Apple added recently: the package with the more recent release is the more likely to have them, but confirm the specific identifier in its source rather than inferring from dates.
- You want typed identifiers that match Apple's documentation one-to-one: that is @kingstinct/react-native-healthkit's stated design goal.
- You already ship react-native-health and it covers your types: its README says bug-fix pull requests are still merged, so a migration is a choice, not an emergency.
Questions
- Is @kingstinct/react-native-healthkit a fork of react-native-health?
- Neither README says so. They are separate projects in separate repositories with different APIs — one callback-based with its own permission constants, one promise-based with Apple's identifier strings — and npm records their first publishes as 2019-02-19 for @kingstinct/react-native-healthkit and 2020-09-21 for react-native-health.
- Can I switch from react-native-health to @kingstinct/react-native-healthkit without rewriting queries?
- No. The APIs differ: react-native-health uses initHealthKit with its own permission constants and callbacks, while @kingstinct/react-native-healthkit uses requestAuthorization with HealthKit identifier strings, promises and hooks. Every call site changes, and the second package also needs react-native-nitro-modules installed.