A React Native bridge module for interacting with Google Fit on Android.
⚠️ Important Notice: Google has deprecated the Google Fit API and is transitioning to Health Connect. While the Google Fit API remains available, we are committed to maintaining this library and bringing it up to the latest standards. We will continue to support this library as long as the API is accessible and will provide migration guidance when Health Connect integration becomes necessary.
- ✅ Step counting and activity tracking
- ✅ Body measurements (weight, height)
- ✅ Heart rate & blood pressure monitoring
- ✅ Blood glucose tracking
- ✅ Sleep tracking with stages
- ✅ Nutrition & hydration logging
- ✅ Workout sessions with activity types
- ✅ Background recording without Google Fit app
- ✅ Expo support via config plugin
- 📦 Installation Guide - Setup for Expo and React Native CLI
- 📖 API Reference - Complete API documentation
- ❓ F.A.Q. - Frequently asked questions
- 📝 Changelog - Version history
- 💬 Gitter Chat - Ask questions, get help!
# Expo
npx expo install react-native-google-fit
# React Native CLI
npm install react-native-google-fit --save
# or
yarn add react-native-google-fit
→ Full installation instructions
import GoogleFit, { Scopes } from 'react-native-google-fit'
// 1. Authorize
const options = {
scopes: [
Scopes.FITNESS_ACTIVITY_READ,
Scopes.FITNESS_ACTIVITY_WRITE,
Scopes.FITNESS_BODY_READ,
Scopes.FITNESS_BODY_WRITE,
],
}
const authResult = await GoogleFit.authorize(options)
// 2. Get daily steps
const steps = await GoogleFit.getDailyStepCountSamples({
startDate: "2024-01-01T00:00:00.000Z",
endDate: new Date().toISOString()
})
// 3. Save weight
await GoogleFit.saveWeight({
value: 75.5,
date: new Date().toISOString(),
unit: "kg"
})
Check out the example app repository for a complete working example.
Track steps, distance, move minutes, and calories burned.
Record and retrieve weight and height data.
Monitor cardiovascular health metrics.
Track blood glucose, body temperature, and oxygen saturation.
Log food intake and water consumption.
Record sleep sessions with stages (light, deep, REM).
Save and retrieve workout sessions with activity types.
- Android: SDK 16+ (React Native 0.60+)
- Google Play Services: Auth & Fitness APIs
- OAuth 2.0: Configured in Google Cloud Console
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
See CONTRIBUTING.md for details.
"Authorization Failed"
- Verify SHA-1 certificate matches Google Cloud Console
- Check package name is correct
- Add test user email in OAuth consent screen
"Google Play Services not available"
- Update Google Play Services on device/emulator
MIT © StasDoskalenko
- 💬 Gitter Community
- 🐛 Report Issues
- 📧 Email: [maintainer email]
Thanks to all contributors who have helped make this library better!