ShootLight
Built a PWA for photographers with real-time golden hour tracking, weather alerts, and offline support
View Source on GitHubOverview
ShootLight is a progressive web app that helps photographers find the best lighting conditions for outdoor shoots.
The Problem
Photographers waste time checking multiple apps for weather, golden hour timing, and location conditions. No single tool combines geolocation-aware lighting predictions with push notifications.
Constraints
- Must work offline for remote locations
- Push notifications without native app stores
- Accurate sunrise/sunset and golden hour calculations
- Built entirely with AI assistance
Approach
Built as a PWA from the start for offline-first capability. Integrated weather API for real-time conditions, built custom golden hour calculator, and used service workers for offline caching. Push notifications deliver alerts when optimal shooting conditions approach.
Key Decisions
PWA eliminates app store barriers, works across platforms, and supports offline caching. Service workers provide push notifications without native code.
- React Native app
- Flutter cross-platform app
Photographers often shoot in areas with poor connectivity. Cache weather data and golden hour predictions locally for offline access.
- Online-only with loading states
- Skeleton UI with retry logic
Tech Stack
- React
- TypeScript
- PWA
- Service Workers
- Weather API
- Geolocation API
Impact
The PWA approach means photographers can check conditions from anywhere, even without signal. Push notifications eliminate the need to constantly refresh weather apps.
Key Learnings
- PWAs are a viable alternative to native apps for utility tools
- Service worker caching requires careful invalidation strategy
- Geolocation + weather data creates genuinely useful context-aware apps