Summit Navigator
One-tap live traffic camera + spoken updates for California’s I-15 Cajon Pass
Driving through the Cajon Pass (I-15) can go from smooth to gridlock in minutes. Existing tools are fragmented radio blurbs, scattered camera feeds, and map apps that don’t explain why traffic is slow. Drivers wanted a single, glanceable source of truth they can trust while driving.
Challenge
Summit Live Traffic Navigator helps drivers crossing California’s Cajon Pass get everything in one place, live road camera, spoken traffic update, real-time map traffic, and nearby gas & restaurants, built with Expo/React Native and a Vercel API for resilient traffic data.
The challenge?
Unify live video, traffic index, and narration into a single, glanceable mobile experience that’s safe to use while driving.
Stay reliable with spotty reception by handling API hiccups gracefully (caching, backoff, and clear “cached/expired” labeling).
Results & Impact
One-tap live camera plus spoken traffic update (“Free Flow, 94%”) using on-device TTS.
Real-time map with traffic layer, clamped to the Cajon Pass corridor to keep context relevant.
Nearby essentials: gas & restaurants via Google Places, simple card UI.
Resilient data: Vercel API computes traffic index & delay, 5-min cache + exponential backoff; serves labeled cached data on failures.
Boosted user retention by introducing engaging features like Journals and Checklists
Store assets (adaptive icons + captions) prepared for iOS/Android releases.
As the Lead Full-Stack Developer, I owned the architecture and implementation of Summit Navigator across mobile and backend.
Mobile App (Expo & React Native):
Delivered a cohesive cross-platform experience with safety-focused, real-time features like:Live Cam + Audio Update – Embedded YouTube stream with one-tap text-to-speech traffic summary
Dynamic Traffic Header – Color-coded status, traffic index %, delay vs. normal, last-updated & cache labels
Explore Map – Google traffic layer, corridor bounds (Cajon Pass), zoom/recenter controls
Nearby Gas & Restaurants – Google Places lists with clean, scannable cards
Report Hazards - Supabase-backed incident submission with validation
UX Polish – Light-theme only, haptics, adaptive icons, accessible typography & states
Backend (Next.js / Node on Vercel):
Designed and optimized APIs for traffic intelligence and reliability:
/api/traffic-status – Uses Google Directions (departure_time=now, best_guess) to compute trafficIndex, delayMinutes, priority & color
Reliability – 5-minute caching, exponential backoff, request timeouts, graceful “cached/expired” fallbacks
Security & Ops – Environment-scoped keys, minimal surface area, structured logging
Web Interface (Next.js):
Built and maintained supporting surfaces that mirror the app for consistency:Landing & API Host – Lightweight marketing surface and stable API endpoint on Vercel
Content Pages – About + Privacy Policy (inline content and PDF option) for store readiness

Key Takeaways
Narrow scope wins: locking the product to one corridor made the UI obvious and useful.
GCP auth gotchas: correct project + API enablement + Android package + SHA-1 pairing are mandatory for Maps.
Resilience matters: caching + backoff + honest UI labels (“cached/expired”) kept trust when networks misbehaved.
Voice UX: device TTS is fast and private; consider AI TTS later for multi-language and richer prosody.
Release hygiene: deterministic versioning, adaptive icons, and clear permission copy speed up store reviews—and skipping AD_ID avoids extra policy friction.