Back to the lab

XpenseLab

Shipped

Personal finance that categorises itself.

Income, expenses, budgets, loans and EMIs, with AI categorisation and optional client-side encryption. The largest codebase in the lab.

  • Next.js 16
  • Firebase
  • Genkit
  • Gemini
  • Stripe
The largest codebase in the lab, subscriptions and GDPR included.
commits
The problem

Budgeting tools either want your bank credentials or want you to type every transaction. Most people quit at the second week.

The approach

Import from CSV and XLSX, categorise with Genkit and Gemini, and keep the whole thing optional: client-side encryption with recovery codes for anyone who would rather the server never see a line item.

The part that was actually hard

Shipping the boring parts. Recurring transactions, EMI schedules, group expense splitting, debt tracking, GDPR export and deletion, and Stripe subscriptions are each individually dull and collectively the difference between a demo and a product.

Where it landed

Live, with a paid tier. Budget progress tracking, AI budget recommendations, and the full import and export path working in both directions.

The rest of the lab