$ cd ~/projects/financial-tracker
Financial Tracker
A personal finance tracker I built for myself, with dual-currency accounting and spend-pace analytics, deployed and used daily as an installable PWA.
Overview
Financial Tracker is a web app I built to manage my own money, not a product built with an eye toward selling it. I tend to build tools like this to fix my own workflow problems: this one tracks spending across USD and Lebanese pound (LBP) accounts and gives me a clearer, more honest picture of what I can actually spend than a raw balance does.
My Role
I designed, built, and maintain the app on my own. It is deployed on Vercel and installed on my phone as a home-screen PWA, and I use it as my day-to-day budget.
Accounts & Transactions
- USD and LBP transactions, with historical FX-rate snapshots so older LBP entries keep the USD value they had at the time, even as the exchange rate moves
- An editable current USD/LBP exchange rate
- Checking and savings compartments, with transfers between them
- Recurring commitments and future-dated planned expenses, not just one-off transactions
- Categories and source tags for income and spending
- Timezone-aware date and month logic
Dashboard & Spending Analytics
- Net this month, trailing completed-month burn rate, and spending pace
- A projected month-end spending total
- Cash reserve expressed in months, and recurring monthly and annual drain
- Category breakdown, and the biggest spending leaks and sources
- Historical balance trajectory over time
The "Spendable Now" Number
The dashboard's headline figure, Spendable Now, is not the checking balance. It subtracts money already committed to unpaid recurring expenses and future planned expenses, so it reflects what I can actually spend rather than what happens to be sitting in the account.
Stack
- Next.js, TypeScript, and Tailwind CSS
- Supabase/Postgres, with row-level-security-based authenticated data access
- Supabase authentication
- Deployed on Vercel; installed on my phone as a home-screen PWA
Financial Tracker is fully deployed and in daily personal use. It sits behind a login screen with a single set of credentials that only I know, since it is a single-user tool built for my own finances rather than a public product.