RegretTracker
AI-Powered Expense Tracker with Personality
An automated expense tracker that turns bank email notifications into actionable insights with AI-powered analysis. Features a self-improving two-stage parsing pipeline, multi-channel ingestion, and a personality system that humorously roasts users for overspending.
Self-improving regex from AI results
Multi-channel ingestion (Gmail + Cloudflare + manual)
Two-stage parsing pipeline (regex → AI)
Key Features
Two-stage transaction parsing: regex for fast/free extraction, Gemini AI fallback with confidence scoring
Self-improving system: AI generates new regex patterns from its own results, stored per bank for future emails
Gmail API batch sync with job-based async architecture (fire-and-forget + polling to handle Vercel’s 10s timeout)
Email forwarding pipeline: unique ingest addresses per user → Cloudflare Email Worker → webhook parsing
Bank support system with onboarding wizard (country/currency/bank selection), per-bank sender matching and regex patterns
Multi-layer transaction deduplication: database checks, intra-batch dedup, Gmail message ID tracking
Chart.js visualizations for spending patterns, category breakdowns, and period comparisons
AI personality feature: sarcastic spending roasts with daily/monthly summaries via cron jobs