Skip to main content
Mobile Launcher
First App Launch in 30 minutes

Tool Integration

Integrate essential services like Firebase, Supabase, RevenueCat, and Expo Dev into your mobile app

Tool Integration

The AI Mobile Launcher boilerplate comes with Firebase, Supabase, and RevenueCat already integrated and configured. This section shows you how to connect your own project credentials and start using these production-ready services.

Overview

The boilerplate includes these pre-integrated services:

  • Supabase - PostgreSQL database, authentication, and storage (v2.84.0)
  • Firebase - Analytics, Crashlytics, Remote Config, and push notifications
  • RevenueCat - In-app purchases and subscription management (v9.6.7)
  • Expo Dev - Build, deploy, and update your apps (EAS integration)

What's Already Implemented

The boilerplate includes production-ready implementations of:

Supabase Integration

  • Authentication with email/password and social logins (Apple, Google)
  • PostgreSQL database with TypeScript type safety
  • Row Level Security (RLS) policies
  • Storage for file uploads (avatars, media)
  • Data synchronization via custom RTK and Redux Toolkit approach
  • Token management with auto-refresh

Firebase Integration

  • Firebase Analytics for user behavior tracking
  • Crashlytics for crash reporting and debugging
  • Remote Config for feature flags and A/B testing
  • Cloud Messaging (FCM) for push notifications
  • Token management with auto-refresh
  • Analytics events throughout the app

RevenueCat Integration

  • Subscription management (monthly/yearly tiers)
  • Paywall UI with A/B testing support
  • Purchase restoration across devices
  • Receipt validation and security
  • Trial period support
  • Localized pricing by region
  • Customer lifecycle tracking

Expo Dev Services

  • EAS Build configuration (dev, staging, production)
  • Build scripts for iOS and Android
  • Deep linking support
  • Over-the-air (OTA) updates ready
  • Environment profiles for different stages

Setup Checklist

To connect your own services, you'll need:

  • Boilerplate cloned and dependencies installed (using yarn)
  • Account created on Supabase.com
  • Firebase project created
  • RevenueCat account and app configured
  • Environment variables file created (.env)
  • iOS and Android apps registered with services

Cost Considerations

Firebase

  • Free tier: Generous limits for development
  • Pricing: Pay-as-you-go (Blaze plan required for Cloud Functions)

Supabase

  • Free tier: 500MB database, 1GB storage, 2GB bandwidth
  • Pro plan: $25/month for production apps

RevenueCat

  • Free tier: Up to $2,500 monthly tracked revenue
  • Paid plans: Starting at $299/month for higher volume

Expo Dev

  • Free tier: Limited builds per month
  • Production plan: $29/month for unlimited builds

Configuration Order

Since everything is already integrated, follow this order to configure with your credentials:

  1. Supabase - Set up your database and auth first (primary backend)
  2. Firebase - Add your Firebase project for analytics and push notifications
  3. RevenueCat - Configure when ready to test in-app purchases
  4. Expo Dev (EAS) - Set up for building and deploying to stores

Boilerplate Architecture

The AI Mobile Launcher uses a feature-first architecture. Each service integration is organized within relevant features:

Plaintext
src/
├── features/
│   ├── auth/                    # Supabase auth integration
│   │   ├── services/
│   │   │   ├── auth.service.ts  # Supabase auth methods
│   │   │   └── oauth.service.ts # Apple/Google sign-in
│   │   ├── hooks/
│   │   │   └── useAuth.ts       # Auth state management
│   │   └── store/
│   │       └── auth-slice.ts    # Redux state
│   ├── todos/                   # Example feature with Supabase
│   │   ├── api/
│   │   │   └── todos-api.ts     # RTK Query + Supabase
│   │   ├── hooks/
│   │   │   └── useTodos.ts      # Offline-first sync
│   │   └── services/
│   │       └── todos-sync.ts    # Sync service
│   ├── analytics/               # Firebase Analytics
│   │   ├── services/
│   │   │   ├── firebase-analytics.ts
│   │   │   └── crashlytics.ts
│   │   └── hooks/
│   │       └── useAnalytics.ts
│   ├── notifications/           # Firebase FCM
│   │   ├── services/
│   │   │   ├── fcm.service.ts
│   │   │   └── local-notifications.ts
│   │   └── hooks/
│   │       └── useNotifications.ts
│   ├── paywall/                 # RevenueCat integration
│   │   ├── services/
│   │   │   └── revenue-cat.service.ts
│   │   ├── components/
│   │   │   └── PaywallScreen.tsx
│   │   └── hooks/
│   │       └── useSubscription.ts
│   └── remote-config/           # Firebase Remote Config
│       ├── services/
│       │   └── remote-config.service.ts
│       └── hooks/
│           └── useRemoteConfig.ts
├── services/
│   ├── sync/                    # Offline-first sync manager
│   ├── storage/                 # MMKV + SecureStore
│   └── api/                     # Base API config
└── ui/
    └── components/              # 52+ reusable components

Security Considerations

  • API Keys: Use environment variables, never hardcode
  • Authentication: Implement secure auth flows
  • Data Validation: Validate all user input
  • Access Control: Implement proper permissions
  • HTTPS Only: All API calls over HTTPS
  • Secrets Management: Use Expo Secrets or similar

Getting Started

The integrations are already set up in the code. You just need to add your credentials.

Quick Start

  1. Create a .env file in the project root with your Supabase, Firebase, and RevenueCat credentials (each guide below tells you exactly what to add)
  2. Follow the detailed guides for each service:

What You Get

Each integration guide shows you:

  • Where the code lives in the boilerplate
  • How to add your credentials (step-by-step)
  • What features are already built
  • How to customize for your app
  • Common issues and troubleshooting

Next Steps

  1. Configure RevenueCat when ready to test monetization
  2. Add Firebase for analytics and push notifications
  3. Start with Supabase to get authentication and database working
  4. Set up Expo EAS for building and deploying

Everything is already coded - you're just connecting your accounts!