// the find
agencyenterprise/react-native-health
A React Native package to interact with Apple HealthKit
A React Native bridge to Apple HealthKit for iOS, covering a wide range of data types from steps and heart rate to ECG and clinical records. If you need to read or write health data in a React Native iOS app, this is the de facto choice — it's been around long enough to have real production mileage and covers nearly everything HealthKit exposes.
The API surface is genuinely wide: activity, body metrics, vitals, dietary, sleep, mindfulness, clinical records, and workout route data are all there, not just the easy stuff. Background observer support is included and documented, which matters for real fitness apps that need to react to data changes without the app being foregrounded. The method-per-category file structure (RCTAppleHealthKit+Methods_Vitals.m, etc.) makes it easy to find what you need in the native layer without wading through a monolith. TypeScript types ship in index.d.ts, so you won't be flying blind in a TS project.
The core is Objective-C and the maintainers announced a Swift rewrite in August 2023 — that was nearly three years ago with no sign of it shipping, so don't count on it. This also means new Apple APIs that lean on Swift concurrency (like recent HealthKit async additions) are likely to lag or never arrive. The callback-based API is showing its age: every method takes an error-first callback instead of returning a Promise, so you're wrapping everything yourself or living with pyramid code. iOS-only by design, which is fine, but if you need Android Health Connect you're bolting on a second package with a completely different mental model.