Expo + Dev Build app that renders Google Maps and calls Google Places + Google Routes API to plan trips.
- Node + npm
- Expo CLI (via
npx expo ...) - For iPhone installation: an Apple Developer account (you said you’ll create this later)
- Install dependencies
npm install- Add env vars
- Copy
[env.example](env.example)to.env(this repo ignores.env) - Fill in:
EXPO_PUBLIC_GOOGLE_MAPS_IOS_KEYEXPO_PUBLIC_GOOGLE_API_KEY
- Google Cloud Console
Enable:
- Maps SDK for iOS
- Places API
- Routes API
Recommended keys:
- Maps SDK for iOS key: restrict to bundle id
com.jackle.catchit - Web services key: restrict to the specific APIs you enabled (still ships in the app binary because there’s no backend proxy)
Start Metro for dev client:
npm run start:devnpx eas init
npm run eas:build:ios:devThen install the build onto your device (EAS internal distribution) and open it.
src/screens/PlanTripScreen.tsx: origin/destination + arrive/depart timesrc/api/google/places.ts: Places Autocomplete + Place Detailssrc/api/google/routes.ts: Routes APIcomputeRoutesrequest + polyline decodesrc/screens/RouteMapScreen.tsx: map + polyline rendering