ReceiptJars is a React + Vite web app for turning receipts and photos into a memory collage. Upload receipts to auto-extract purchase details with Gemini, add photos and stickers, and see a simple spending breakdown by category.
- Receipt uploads with AI-powered extraction (merchant, date, total, category, items)
- Photo uploads and draggable collage items
- Stickers for quick decoration
- Spending summary by category
- React + TypeScript
- Vite
- Zustand state management
- Gemini API for receipt analysis
npm installCreate a .env file in the project root with your Gemini API key:
VITE_GEMINI_API_KEY=your_api_key_herenpm run devThe app will be available at http://localhost:5173.
npm run buildPreview the production build locally:
npm run previewsrc/pages/Home.tsx: main collage workflow and receipt handlingsrc/services/gemini.ts: Gemini API integration and receipt parsingsrc/store.ts: Zustand store for collage items and totalssrc/styles/: component-level styles
- Receipt analysis depends on the Gemini API and requires a valid API key.
- If the API rate limits or a model is unavailable, the app falls back to other Gemini models.