Fortune Snap
Side project, 2026 to present. Sole developer. Published on Google Play.
Cross-platform mobile app that runs a vision model over user-captured photos, backed by a serverless Firebase backend that handles inference, a credit system, and in-app purchases. Built to take my computer vision background end to end on mobile, from camera capture through to a published store release.
- Built the full path from camera capture to result: on-device image preprocessing feeding a server-side vision model call with structured JSON output and post-processing. Fixing the input size at capture keeps per-call inference cost and latency predictable across devices.
- Kept model and prompt logic in the backend rather than the app, so inference behaviour changes without an app store release. Used this after launch to roll out a reworked prompt to a live app, gated behind an environment kill switch and a per-account test scope.
- Made the credit and purchase system server-authoritative after finding the client could mint currency. Transactional credit reservation with refunds on failure, and in-app purchases verified server-side and redeemed once per store transaction.
- Built anonymous-first auth with Google and Apple account linking, local-first history with a bounded cloud mirror, and offline handling so a failed capture is never lost.
- TypeScript
- React Native
- Expo
- Firebase Cloud Functions
- Firestore
- Google Gemini API
- GitHub Actions