Photo-Upload & Gallery App Foundation (Firebase + Uppy)
A stock-image / visual-content marketplace
Overview
A minimal but feature-rich foundation app for a visual-content marketplace, centered on robust photo capture/upload and gallery presentation, backed by Firebase and direct-to-S3 multipart uploads.
Why It Exists
The product needed a proven baseline for the hardest parts of an image platform: reliable large-file uploads, in-browser capture, and polished gallery display. This codebase served as the working foundation/boilerplate those flows were built on.
What We Built
A React (CRA + Tailwind + Mantine) app integrating the Uppy upload stack with AWS S3 multipart and compression for resilient large-image uploads; in-browser capture via webcam and HTML5 camera plus client-side face filtering; PhotoSwipe and Pro Gallery for lightbox/grid presentation; QR generation, phone-input and avatar utilities; and a Firebase backend (Firestore rules, Cloud Functions, Hosting) accessed through React Query Firebase hooks. OneSignal is wired for push notifications.
Technologies & Approach
React with Mantine and Tailwind for UI; Uppy (core, dashboard, S3/S3-multipart, compressor, XHR) for upload resilience; Firebase for auth, data, functions, and hosting; PhotoSwipe and Pro Gallery for media display. The minimal framing kept it reusable as a starting point across the platform’s surfaces.
Outcome / Impact
Provided a battle-tested foundation for the marketplace’s media flows, de-risking upload reliability and gallery UX and feeding directly into the Next.js production frontend.
Capabilities Demonstrated
- Resilient large-file uploads with Uppy and S3 multipart
- In-browser photo capture, compression, and face filtering
- Firebase-backed serverless app architecture
- Polished gallery and lightbox experiences