Mobile / Getting started
Mobile overview
An Expo surface connected to the same server-owned foundation.
Share contracts, keep native presentation
The Expo application lives in apps/mobile. It consumes the shared foundation through an API rather than embedding server credentials. Native authentication, session storage, deep links, and entitlement presentation have their own client modules.
Configure the API and app scheme
Set EXPO_PUBLIC_API_URL to an API origin reachable by your emulator or physical device. Localhost on a phone refers to that phone, so use the appropriate reachable development host. EXPO_PUBLIC_APP_SCHEME identifies the app’s deep-link scheme.
Review apps/mobile/app.config.ts and the authentication configuration before testing callbacks. Public Expo values are bundled into the client and must contain no provider secrets.
Verify on the target device
Run deterministic session-storage, deep-link, and entitlement tests first. Then verify the actual sign-in return path, session restoration, and sign-out in the intended native build.
Physical-device and provider acceptance are separate from the local web golden path. Track them explicitly for each release target.