Switchbordswitchbord
v0.16.01

v0.16.01

Start the native Android/iOS mobile MVP with an Expo skeleton, safe config diagnostics, and tested operator-inbox scaffolding.

What's new


  • Added apps/mobile, the first native Switchbord mobile app scaffold, using Expo and React Native for both Android and iOS.
  • Registered the mobile app in the pnpm workspace and root workspace graph so it can be installed, typechecked, tested, and bundled alongside the existing app/api/web surfaces.
  • Added a pnpm-safe Expo entrypoint with registerRootComponent(App) plus iOS and Android identifiers for the future native release pipeline.

Mobile MVP scaffolding


  • The skeleton models the initial operator flow with React Native primitives only: boot/auth placeholder, workspace picker, inbox list, conversation thread, and settings diagnostics.
  • Shared route/state modules keep the MVP flow typed and testable before the Supabase auth, BFF, realtime, push, and offline-cache follow-up slices land.
  • The mobile bundle does not import @repo/database, service-role helpers, or web-only design-system/Radix components.

Security posture


  • Mobile public configuration currently accepts only EXPO_PUBLIC_SUPABASE_URL.
  • API-key, service-role, and bundled workspace-id inputs are ignored and surfaced as diagnostics, preserving the planned first-party Supabase JWT + server-side workspace membership architecture.

Verification


  • pnpm --filter mobile test
  • pnpm --filter mobile typecheck
  • pnpm --filter mobile lint
  • pnpm --filter mobile exec expo export --platform android --output-dir /tmp/mobile-export-review --no-bytecode --clear
  • pnpm --filter mobile exec expo export --platform ios --output-dir /tmp/mobile-export-ios-review --no-bytecode --clear
  • pnpm --filter app build
  • pnpm --filter web build