SpendSmart is an open-source iOS app that uses AI to make receipt management effortless.
Just snap a photo of one or more receipts, and SpendSmart automatically extracts all the key details: store name, location, items, totals, payment method, and more.
- 📸 Capture receipts using your iPhone camera
- 🤖 AI-powered OCR to extract:
- Store name
- Address/location
- Items and totals
- Payment method
- Date & time
- 🧠 Smart parsing logic for messy or unclear receipts
- 📂 View and manage all your receipts in one place
- 🔓 100% open source & free to use
Capture | Extract | Manage |
---|---|---|
Additional App Store preview screenshots available here
- iOS: Swift + SwiftUI
- AI/OCR: Gemini 2.0 Flash
- Storage & Auth: Local (without account) + Supabase for sync
git clone https://github.com/yourusername/SpendSmart.git
cd SpendSmart
Before building, create a new file in the project root called APIKeys.swift
:
let supabaseURL = "YOUR_SUPABASE_URL"
let supabaseAnonKey = "YOUR_SUPABASE_ANON_KEY"
let supabaseServiceRoleKey = "YOUR_SUPABASE_SERVICE_ROLE_KEY"
let geminiAPIKey = "YOUR_GEMINI_API_KEY"
let secretKey = "YOUR_SECRET_BACKEND_KEY"
let imgBBAPIKey = "YOUR_IMGBB_API_KEY"
You can get these keys from:
- Supabase – for the URL, anon key, and service role key
- Google Cloud Console – to generate your Gemini API key
- imgBB – for image upload API keys
Do NOT commit this file to version control.
If you find SpendSmart useful, consider giving the repo a ⭐️ or sharing it!
Built solo, bootstrapped, and open source – every bit of support matters.
Built and maintained by Shaurya Gupta
- Twitter: @madebyshaurya
- GitHub: @madebyshaurya
Have a question or feedback? Open an issue or start a discussion.