VibeFast
Authentication

Apple Authentication

Learn how to configure Sign in with Apple for your VibeFast stack.

Apple Developer Setup

  1. Sign in to the Apple Developer portal

  2. Get your Team ID (we'll need it later) Step 2

  3. Go to Certificates list. Check if your bundle ID already exists (EAS builds create it automatically).

  4. If not, click +, select App ID, keep type as App, and create it. Bundle ID must match your code (check /apps/native/env.js).

Step 4 Step 4

  1. Enable Push Notifications and Sign in with Apple Step 5 Step 5 Step 5

  2. Create a Service ID: Choose Service IDs from dropdown, click + Step 6

    • Use an identifier similar to your bundle ID. Click continue and save this Service ID. Step 6
  3. After creating the service ID, From Service IDs list, click the service ID you created just now Step 6

  4. Select the App ID from this dropdown (that was created in step 4) Step 8

  1. Add your Convex URLs (dev and production) from Convex Dashboard → Settings → URL & Deploy Key Step 9

  2. Set the Service ID:

cd packages/backend
npx convex env set AUTH_APPLE_ID YOUR_SERVICE_ID_HERE

Supabase Apple Auth

  1. Click continue Step 9

  2. Go to Keys section, click + Step 10

  3. Check Sign in with Apple, click Configure Step 11

  4. Select your App ID Step 12 Step 12

  5. Click Download to get the .p8 file Step 13

  6. Go to Convex Apple OAuth docs and use the secret generator (this secret generator convex works for Convex and Supabase both, its platform agnostic step):

  • Enter your Team ID (step 2)
  • Enter Service ID (step 6)
  • Upload the .p8 file
  • Click Generate secret key Step 14
  1. Set the secret:
cd packages/backend/convex
npx convex env set AUTH_APPLE_SECRET GENERATED_SECRET_KEY_HERE
  1. In Supabase Dashboard, go to Authentication > Providers > Apple

  2. Click on Apple in providers list, enter your Service ID (from step 6) as the Client ID and Enter the secret generated in step 14 in secret key field.

Supabase Apple Auth 1 Supabase Apple Auth 2

Test Your Setup

Run your Expo app on a real device. The "Sign in with Apple" button should trigger the native Apple sign-in sheet and return a valid session.

This part of docs took tooooo much effort I hope it helps alot :)

Found an issue or bug in the docs?

Help me improve! If you spot any errors, typos, or have suggestions, please let me know.

Reach out on X/Twitter @zafarbuildzz

On this page