How radebeneo/eskort-driver works
Eskort Driver is a scaffolded mobile app for drivers: authenticate, load a driver profile, review assigned deliveries, inspect delivery details, and use location and route guidance. The README also documents mock/live service selection, Supabase-backed delivery and driver data, tracking preferences, and a Google Maps Edge Function proxy. Edges are limited to sampled references or README statements; hook-to-repository wiring is not shown, so those links are marked unverified.
Main entry points: auth-provider.tsx Auth provider · (app) Delivery routes · _layout.tsx App shell · supabase-delivery-repository.ts Delivery repository
Components 28
App and screens
- App shell
src/app/_layout.tsx - Delivery routes
src/app/(app) - Sign-in route
src/app/(auth)/sign-in.tsx - UI design system
src/components/ui/theme.ts
Identity and profile
- Sign-in screen
src/features/auth/sign-in-screen.tsx - Auth provider
src/providers/auth-provider.tsx - Driver profile
src/features/auth/driver-profile-screen.tsx
Delivery operations
- Assigned deliveries
src/features/deliveries/assigned-deliveries-screen.tsx - Delivery details
src/features/deliveries/delivery-details-screen.tsx - Delivery data hook
src/features/deliveries/use-deliveries.ts
Location and routing
- Location permission
src/features/location/use-location-permission.ts - Route guidance
src/features/navigation/delivery-route-section.tsx - Route estimate
src/features/navigation/use-route-estimate.ts
Services and state
- Delivery repository
src/services/deliveries/supabase-delivery-repository.ts - Delivery mapper
src/services/deliveries/delivery-mapper.ts - Supabase auth
src/services/auth/supabase-auth-service.ts - Driver repository
src/services/drivers/supabase-driver-repository.ts - Services injection
src/providers/services-provider.tsx - Service selection
src/services/index.ts - Delivery selection
src/stores/delivery-selection-store.ts - Tracking preferences
src/stores/tracking-preferences-store.ts - Device location
src/services/location/expo-location-service.ts - Maps proxy client
src/services/maps/edge-function-maps-service.ts - Environment config
src/config/env.ts - Session storage
src/lib/secure-storage.ts
Other components
- Driver
- Supabase
- Maps Edge Function
Connections 26
- Driver → Sign-in route: opens sign-in
README.md - App shell → Auth provider: sets up providers
src/app/_layout.tsx - App shell → Environment config: checks config
src/app/_layout.tsx - App shell → Delivery routes: guards app routes
README.md - Sign-in route → Sign-in screen: renders screen
README.md - Driver → Delivery routes: opens deliveries
README.md - Delivery routes → Assigned deliveries: renders list
README.md - Delivery routes → Delivery details: renders details
README.md - Assigned deliveries → Delivery data hook: loads deliveries
src/features/deliveries/assigned-deliveries-screen.tsx - Delivery data hook → Delivery repository: requests delivery data
- Delivery repository → Supabase: reads and updates
src/services/deliveries/supabase-delivery-repository.ts - Delivery repository → Delivery mapper: parses rows
src/services/deliveries/supabase-delivery-repository.ts - Auth provider → Services injection: gets services
src/providers/auth-provider.tsx - Auth provider → Delivery selection: clears selection
src/providers/auth-provider.tsx - Auth provider → Supabase auth: manages session
- Auth provider → Driver repository: loads profile
src/providers/auth-provider.tsx - Supabase auth → Supabase: authenticates
src/services/auth/supabase-auth-service.ts - Driver profile → Auth provider: reads profile
- Services injection → Service selection: receives services
src/providers/services-provider.tsx - Service selection → Environment config: selects mock or live
src/services/index.ts - Location permission → Device location: requests permission
src/features/location/use-location-permission.ts - Route guidance → Location permission: checks permission
src/features/navigation/delivery-route-section.tsx - Route guidance → Route estimate: shows estimate
src/features/navigation/delivery-route-section.tsx - Route estimate → Maps proxy client: requests route data
- Maps proxy client → Maps Edge Function: calls proxy
README.md - Driver → Tracking preferences: sets preferences
README.md