I have built an app using lovable and want it now turned into an app on ios and android. It doesn't need to go in the app store, it can be published via test flight for iOS \packaged as an apk for android as it only needs to be used by about 100 users. Ideally we will be able to update code in github and the apps will update on the devices, but i understand if this is not possible. App will need permissions for GPS, using the camera, saving photos to the local library and push notifications. Frontend: React 18 + TypeScript, built with Vite, styled with Tailwind CSS and shadcn/ui (Radix UI components) Backend: Supabase (hosted PostgreSQL database, authentication, file storage, and Edge Functions written in Deno/TypeScript) Routing: React Router v6 (single-page app) State Management: React Query (TanStack Query) for server state, React Context for auth and GPS tracking What's Already Done for Native Deployment Capacitor is pre-configured (capacitor.config.ts): App ID: app.lovable.c1b8150bb65a4bf8847d9a6935616c8d App Name: drive-smart-log Web directory: dist (Vite build output) Currently configured with a remote server URL for hot-reload during development — this should be removed for production builds so the app loads from the bundled dist folder instead CapacitorHttp plugin enabled for native HTTP requests Capacitor native plugins already installed: @capacitor/core + @capacitor/cli v7.4.2 @capacitor/ios v7.4.2 @capacitor/android v7.4.2 @capacitor/camera v7.0.2 (for native camera access) @capacitor/filesystem v8.0.0 (for saving photos to device) PWA infrastructure in place (also benefits native): Service worker (public/sw.js) with network-first caching, push notification handling, and periodic GPS sync Web manifest (public/manifest.json) with icons and standalone display mode iOS-specific meta tags in index.html (apple-mobile-web-app-capable, etc.) Permissions the app uses: Camera — for capturing job photos, checklists, receipts Location/GPS — continuous tracking during active jobs Push Notifications — for new messages and job updates File System — saving photos to device gallery Wake Lock — keeping screen on during GPS tracking What the Developer Needs to Do Clone the repo, run npm install Add native platforms: npx cap add ios and npx cap add android For production builds: Remove the server.url from capacitor.config.ts so the app loads from the local dist bundle Build: npm run build then npx cap sync iOS (Xcode required): Add NSCameraUsageDescription, NSLocationWhenInUseUsageDescription, NSLocationAlwaysUsageDescription, and NSPhotoLibraryAddUsageDescription to Info.plist Configure signing with an Apple Developer account npx cap open ios to open in Xcode Android (Android Studio required): Camera, location, and storage permissions are needed in AndroidManifest.xml (some may already be added by Capacitor plugins) npx cap open android to open in Android Studio Push Notifications: Will need platform-specific setup (APNs for iOS, FCM for Android) — the web push infrastructure exists but native push requires additional configuration App Store / Play Store: Set up app icons, splash screens, and store listing metadata Key Architecture Notes for the Developer The app communicates with Supabase for all data — there's no custom backend server to deploy Edge Functions (in supabase/functions/) handle server-side logic like GPS beacons, push notifications, receipt OCR, and route calculations Authentication uses Supabase Auth (email-based) The app is mobile-first in design and already handles portrait orientation