Available for work
Case studyPersonal finance/2026/Live, open source

Ledgr

Know where your money went before the month ends.

Ledgr preview

Ledgr is a personal finance app built on one belief: a ledger of transactions is not the same thing as understanding your money. It plans around the day you are actually paid instead of the calendar month, reduces a month of spending to a single score you can read at a glance, and answers plain questions about your spending through a grounded AI assistant that never gets direct access to your database. I designed and built the whole thing.

Role
Full-stack engineer
Scope
Concept, product design, full-stack build
Platform
Web, installable PWA
Industry
Personal finance
Status
Live, open source
Built with
Next.jsReactTypeScriptTailwind CSSPostgreSQLRechartsnext-pwa
01Why this exists

Most money apps record the past. Few tell you what to do next.

Every bank app and expense tracker can show you a list of what you spent. Almost none tell you whether that was fine. The gap is not data, most people already have the transaction history. It is turning that history into one clear decision before the month is over and the decision no longer matters.

Ledgr exists to close that gap. Not a better spreadsheet, a single readable signal, with the detail behind it one tap away.

The money score: 8.6 out of 10, with needs, wants, and savings measured against plan.
02The problem

Calendar-month budgeting does not match how money actually moves.

Most budgeting tools quietly assume you are paid on the 1st and spend in neat 30-day blocks. Real life does not work that way.

  • Salary rarely lands on the 1st, so a monthly budget is measuring the wrong 30 days.
  • Small, forgettable UPI payments are exactly where money leaks, and most trackers do not keep them attached to a category or a day.
  • Savings gets treated as whatever is left, instead of a line item in the plan itself.
  • Cash, cards, UPI, and transfers each tell part of the story. Stitched across five apps, none tell the whole one.
03The core idea

Plan around your real payday, not the calendar's.

The foundation of Ledgr is the salary cycle: a budget period that runs payday to payday, not the 1st to the 31st. Every category, every trend, every score is measured against that real cycle. On track means on track for how you actually get paid, not for a calendar convention that has nothing to do with your income.

The salary-cycle selector, sitting next to the calendar-cycle option.
04How it works

Plan. Log. See. Decide.

  1. 1Set the plan

    Add income, pick a calendar or salary cycle, and shape categories around actual life, not a generic template.

  2. 2Log in seconds

    Capture every expense, income entry, and saving with the payment context, UPI, card, cash, or transfer, that you will need later.

  3. 3See the pattern

    Compare needs, wants, and savings against plan, with trends you can scan instead of dig for.

  4. 4Ask a better question

    A grounded assistant answers things like where did I overspend this cycle, reasoning over your own data without ever being handed database access.

05The money score

One number for the month. The reasoning stays visible.

A score from 0 to 10 exists so a month is readable at a glance, not a spreadsheet you have to interpret cold. Below 5, the plan has drifted enough that the answer is fix the biggest category, not every small purchase. Between 5 and 8, parts of the plan are holding and a couple of categories need attention before the cycle closes. Above 8, needs, wants, and savings are close enough to plan that the job is protecting what already works.

The score is a summary, never the whole answer. The needs, wants, and savings breakdown and the daily trend sit one tap behind it for anyone who wants to see exactly what moved it.

The three score bands: reset the plan, getting steadier, and on track.
06The hard part

Letting an AI answer questions about your money without letting it near your database.

The obvious way to build ask AI about your spending is to give a model query access to the transaction table and let it write SQL on demand. That is also the fastest way to turn a budgeting app into a data-access incident, one bad prompt or one bug in the query layer away from exposing data it should never touch, or worse, writing to it.

Ledgr's assistant is grounded instead. It reasons over your own spending through fixed, read-only tools to answer a question like where did I overspend this cycle, without ever being granted a live connection to the underlying database. The assistant gets exactly the shape of data it needs to answer the question in front of it, and nothing else.

The Ask AI assistant answering a spending question, grounded in read-only tools.
07Built to be checked

Open source, on a plain stack, and yours alone.

Ledgr is live and open source. The repo, contributing guide, and README are public alongside the product. It runs on a deliberately plain, well-understood stack, Next.js, React, and PostgreSQL, so the interesting parts of the product are the budgeting model and the grounded AI boundary, not the plumbing underneath.

The account is a private workspace, not a feed for an ad network or a dataset for aggregation. The model answering your questions is scoped to your data only, never the reverse.

Where it fits

Clarity, not another spending chart.

What mattersLedgrTypical tracker
PlanningCalendar or salary cycleUsually calendar-only
Budget modelNeeds, wants, and savingsOne generic spend limit
ContextCategory, payment mode, notesAmount and merchant only
AnalysisWeekly to yearly, plus grounded Ask AIBasic monthly totals
PrivacyPrivate account workspaceOften ad or aggregation driven
PriceFree to startPaywall before real clarity
0-10
money score that summarizes an entire cycle
3
budget categories tracked against plan: needs, wants, savings
0
database access granted to the AI assistant
4
payment modes unified into one ledger: UPI, cards, cash, transfers
Menu00%