Inspiration

I have three credit cards in my wallet.

And every time I'm at checkout I freeze for a second, which one do I use?

Most of the time I just pick one and move on. Turns out that small moment of uncertainty was costing me around $400 a year in unclaimed rewards. Not because I was spending too much. Just because I was swiping the wrong card.

The average person leaves $400 in unredeemed credit card rewards on the table every single year. Not from overspending — from under optimizing.

That frustration is what became Smart Swipe Mirror.


What it does

Smart Swipe Mirror turns your bank statement into three things no other app gives you together:

💳 Smart Card Optimizer Upload any bank CSV and Smart Swipe Mirror automatically categorizes every transaction using AI — no hardcoded merchant lists. Any merchant, known or unknown, gets correctly classified. It maps your spending to the best card in your wallet and shows exactly how much you left on the table by not using it.

🪞 Spending Personality Engine Every month you get a personal Spending Story — a warm human narrative about your financial month. Not a lecture. Not guilt. Just honest reflection: _ Like "May was ambitious. Shopping surged 359%. Travel spiked. Your money is chasing adventure — make sure your cards are keeping up."_

🤖 AI Financial Coach Powered by Groq and Llama 3.3 with dynamic context injection. Pulls real transaction data and card rewards database on every query and answers with exact dollar amounts:

  • "Which card for groceries?" → Amex Gold, 4x points, you missed $36 last month
  • "Best card for travel?" → Chase Sapphire Preferred, 3x points, here is exactly what you earned vs missed

📊 Full Analytics Stack

  • Month over month trend charts with category breakdown
  • Overspending alerts when any category jumps 20% vs last month
  • Savings goal tracker with live progress bars per category
  • Rewards wallet showing earned points per card this month
  • One click PDF export of monthly report

🚀 Try Demo — No Signup Needed Judges and visitors explore the full app instantly with pre-populated 4 month sample data. All features live and working, zero friction.


How I built it

Built through multi-turn conversations with MeDo, structured in 4 phases:

Phase 1 — Statement Upload and Parser Designed the CSV upload flow and transaction categorization pipeline. The merchant categorization uses Groq API as a micro-classifier — any merchant name, known or unknown, gets correctly categorized automatically. Results cached in database so each merchant is only classified once.

Phase 2 — Dashboard and Trend Analytics Built category charts and month over month comparison engine. Implemented color coded bar charts, donut spending breakdown, overspending detection with 20% threshold logic, and dynamic month selector with animated transitions.

Phase 3 — Smart Card Advisor Built a pre-loaded card rewards database with fuzzy search matching partial words and synonyms. Implemented missed rewards calculator comparing card used vs optimal card per transaction, and new card suggestion engine showing exactly how much extra the user would earn by switching.

Phase 4 — AI Financial Coach and Mirror Integrated Groq API with dynamic context injection — every query fetches real transaction data, calculates missed rewards on the fly, and injects personalized context into the system prompt. Added spending personality profiling, animated blob hero, and savings goal tracker.


Challenges I ran into

  • Database schema mismatches — tables generated without proper relationships, requiring multiple iterations to fix foreign key errors and schema cache issues

  • AI giving generic answers — the coach initially responded with generic advice because card rewards data was not being dynamically injected into the system prompt. Rebuilt the entire context pipeline to calculate missed rewards before every API call

  • Coming Soon placeholders — MeDo built UI shells without wiring them to live data, requiring explicit prompts to connect every frontend component to the database

  • File storage errors — solved by switching to client side FileReader API instead of server side storage fetch, making parsing faster and more reliable

  • API provider navigation — navigated quota limits and compatibility issues across multiple AI providers before landing on Groq as a reliable solution

  • Chart rendering — all categories rendered the same color, fixed with explicit category to color mapping across all chart components


Accomplishments that I'm proud of

  • AI merchant categorization that works for any merchant name with zero hardcoded lists — completely future proof
  • AI Financial Coach that answers with exact dollar amounts from real transaction data, not generic responses
  • Spending Personality Engine that turns dry numbers into an emotional narrative with animated blob hero — something even professional fintech apps rarely do well
  • Complete missed rewards engine showing not just the best card to use, but exactly how much was left on the table per transaction
  • Demo Mode letting anyone explore the full app instantly with zero friction — no signup, no setup

What I learnt

  • The most powerful AI features come from dynamic context injection — feeding real calculated data into every prompt rather than relying on the model's general knowledge
  • Breaking a complex app into small focused phases works far better than describing everything at once
  • Testing with realistic multi-month data early reveals wiring issues that single month data completely hides
  • Removing friction for first time users matters as much as the features themselves — hence Demo Mode with pre-populated data
  • The difference between a good app and a great app is often just one deeply personal feature — the Spending Story is ours

What's next for Smart Swipe Mirror

  • 🧾 Receipt photo upload — photograph a receipt, AI extracts merchant and amount automatically
  • 🤔 What-if simulator — "If I switched all dining to Amex Gold, how much would I save annually?"
  • 👨‍👩‍👧 Family mode — merge multiple statements into one household dashboard
  • 🔗 Live bank connection — replace CSV upload with real time bank feed via Plaid API
  • 📱 Mobile app — real time card suggestions at the moment of purchase
  • 🌍 Multi currency support — for users who travel and spend internationally

Built With

Share this project:

Updates

Submission history