@beaverfy/expo-fitbit
Add fitbit authentication to your expo managed react native apps
Getting Started
Installation
Using yarn
yarn add @beaverfy/expo-fitbit
Using NPM
npm install @beaverfy/expo-fitbit
Getting Credentials
Register an app on dev.fitbit.com, fill out your app details and select client, since we'll be using the credentials in our app
Once you've created your app, edit your app to have the redirect url: scheme://fitbit
(replacing scheme with your app's scheme)
Intergrating into your project
We're still working on this section
Wrap your app in FitbitProvider
:
import { FitbitProvider } from "@beaverfy/expo-fitbit";
import Constants from "expo-constants";
import { MMKV } from 'react-native-mmkv';
export const storage = new MMKV({
id: `authentication`,
encryptionKey: 'random-password'
});
<FitbitProvider configuration={{
clientId: "CLIENT_ID",
clientSecret: "CLIENT_SECRET",
appScheme: Constants.expoConfig.scheme,
scopes: ["profile"],
storage: {
get: (key) => storage.getString(key),
set: (key, value) => storage.set(key, value)
},
onLogin(user) => console.log("User logged in:", user);
}}>
{/* app code... */}
</FitbitProvider>
Get the user's profile data with the useFitbit
hook:
const {
userData,
isLoading,
isLoggedIn
} = useFitbit();
return <Text>Logged in as: {userData?.name}</Text>