Integrations
Firebase
Connect Auth, Firestore, Functions, and Analytics to your Firebase project.
The kit uses @react-native-firebase (native SDK), not the JS web SDK. You need a real iOS and Android app in Firebase.
1. Create a Firebase project
- Create a project in the Firebase console.
- Add an iOS app with your bundle ID (
expo.ios.bundleIdentifier). - Add an Android app with your package name (
expo.android.package). - Download:
GoogleService-Info.plist→ project root (and it is copied intoios/on prebuild)google-services.json→ project root
app.json already references those filenames.
2. Enable products
In Firebase, enable at least:
- Authentication — Email/password. Add Google and Apple providers if you use those flags.
- Firestore
- Cloud Functions (Ask AI)
- Analytics and Crashlytics (optional but already wired)
3. Google Sign-In
- In Firebase Authentication, enable Google.
- Copy the Web client ID.
- Set
EXPO_PUBLIC_GOOGLE_WEB_CLIENT_IDin.env.local. - Keep
FEATURES.googleSignIntrue.
4. Apple Sign-In
Enable Apple as a provider in Firebase. The iOS entitlement com.apple.developer.applesignin is already in app.json. Keep FEATURES.appleSignIn true for iOS.
5. Ask AI (Cloud Functions)
Functions live in functions/. Copy functions/.env.example to functions/.env and set the model keys you use (OPENAI_API_KEY, DEEPSEEK_API_KEY, or GEMINI_API_KEY).
For local functions:
EXPO_PUBLIC_USE_LOCAL_FUNCTIONS_SERVER=trueRebuild the native app after changing that flag.
Then run npm run prebuild and a native build so the Google services files are compiled in.