LedgerMind is an offline-first finance agent that transforms messy bank CSVs into clear budgets, actionable insights, and transparent AI explanations.

It combines:

Explain Signal → every prediction comes with reasoning.

Learning Loop → the agent retrains on your feedback in real time.

Planner → generates actionable steps like categorizing unknowns, setting budgets, or exporting reports.

Offline-first privacy → powered by open-source LLMs (gpt-oss:20b), all running locally.

💡 What Inspired Me

I grew up with parents who taught me the importance of budgeting. Any time they lent me money, they’d ask me to make a budget to keep track of it. At first, this was valuable — but over time, it became tedious, especially since I didn’t know Excel well.

That experience stuck with me. I wanted a tool that made budgeting simple, transparent, and adaptive without needing to become an Excel wizard. LedgerMind is my answer to that problem: a smart agent that learns your habits, explains its reasoning, and keeps your finances private.

📚 What I Learned

How to integrate local open-source LLMs into a production-grade workflow.

The value of explainability — users trust AI more when they can see why it makes decisions.

How to blend rules, machine learning, and LLMs into a single cohesive system.

Security best practices: cookie-based auth, CSRF protection, RBAC.

Frontend/Backend orchestration with FastAPI, React, Tailwind, and Docker.

🛠️ How I Built It

Backend: FastAPI + SQLAlchemy with Postgres/SQLite.

Routers for ingestion, charts, ML, reports, budgets, rules, and planner.

Real-time ML feedback loop using partial_fit.

Frontend: Vite + React + Tailwind.

Unified ChatDock for natural language queries.

Panels for charts, budgets, unknowns, rules, and planner.

ML/LLM:

Transaction classification with incremental learning.

NL → SQL grounding for transaction queries.

Explanations via gpt-oss:20b (Ollama/vLLM).

Infra: Docker Compose for one-click dev/prod setup.

⚡ Challenges I Faced

Running large local models efficiently (prompt trimming, context management).

Blending rules + ML + LLM into suggestions without duplicates.

UI polish: building a clean, intuitive UX under hackathon deadlines.

Security: implementing cookie auth + CSRF correctly across frontend and backend.

Branding: designing a logo and cinematic visuals that look professional.

✨ Closing Thought

LedgerMind grew out of a personal frustration with tedious budgeting and became a demonstration of what open-source AI can achieve. It’s a tool that gets smarter with every click, explains its reasoning, and keeps your finances private — just the kind of agent I wish I had growing up.

Built With

Share this project:

Updates