From 3b884b04158f02274ccf91d72e7c6345c711e66a Mon Sep 17 00:00:00 2001 From: byGalax Date: Sat, 16 May 2026 16:14:23 +0200 Subject: [PATCH] docs(mobile): document EAS Secrets contract for EXPO_PUBLIC_* --- apps/mobile/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/apps/mobile/README.md b/apps/mobile/README.md index 8202016..abd480b 100644 --- a/apps/mobile/README.md +++ b/apps/mobile/README.md @@ -73,6 +73,23 @@ Copy `.env.example` to `.env.local` and fill in the same Supabase host + anon key the desktop uses. Expo bundles only `EXPO_PUBLIC_*`-prefixed vars into the JS, which is what the three required values use. +## EAS Builds and Environment Variables + +Production and preview builds load `EXPO_PUBLIC_*` from EAS Secrets — +`.env.local` is only honoured by `expo start` locally. Without the +secrets configured, an APK installs but `env.ts` throws on first read +and `` renders. + +Required secrets (create once per project): + +```bash +npx eas-cli secret:create --scope project --name EXPO_PUBLIC_SUPABASE_URL --value '' +npx eas-cli secret:create --scope project --name EXPO_PUBLIC_SUPABASE_ANON_KEY --value '' +npx eas-cli secret:create --scope project --name EXPO_PUBLIC_AUTH_REDIRECT_URL --value 'netralax://auth/callback' +``` + +Check with `npx eas-cli secret:list`. + ## Roadmap See `docs/superpowers/specs/2026-05-13-mobile-deployment-roadmap.md`.