Current work

Build brief

In progress

Local Bank Statement Analyzer

The problem

People often have subscriptions, recurring expenses, fees, and spending habits spread across different bank accounts and credit cards without realizing how much they're spending or how long certain charges have existed.

Who feels it

Individuals who want a private, long-term overview of their finances without uploading sensitive bank statements to an external financial service.

What I'm building

A downloadable, local-first desktop app (Electron + a Python backend) that imports multiple months or years of bank and credit-card statements, extracts and normalizes transactions, and gives one consolidated view of finances across multiple accounts and institutions. Extraction and every calculation run on deterministic Python logic; AI is used only where interpretation adds value, and anything sent to an LLM is stripped of PII first through a dedicated Privacy Gateway, so raw statements and sensitive financial data never leave the machine.

What success looks like

Extracting at least 95% of transactions accurately, with amounts as close to 100% accurate as possible, across multiple statements from multiple banks and accounts. Months or years of statements combine into one normalized dataset that surfaces recurring expenses and how long they've been active, top merchants, fees, income, spending categories, and monthly trends. Duplicate or overlapping transactions get caught, and extracted totals reconcile against the statement balances.

  • Electron
  • ReactJavaScript library for building user interfaces out of reusable components.
  • TypeScriptJavaScript with static types that are checked before the code runs.
  • FastAPI
  • PythonGeneral-purpose language used here for data processing and AI services.
  • SQLModel
  • pdfplumber
  • Tailwind CSSUtility-class CSS framework for styling directly in the markup.
  • pytestThe standard testing framework for Python.