Fine Financials
I built the finance app of my dreams with Claude Code. Day and night, in my retired/unemployed state I laid down prompt after prompt and designed a sprawling app that tries to make sense of my financial world in an app designed for my multi-country, multi-currency, multi-language world.
The app is called Fine.
Fine ingests all the financial records of any form I can throw at it, whether it is years of scanned receipts, bank statements in PDF, credit card transaction history in CSV or even crawled online receipts from Gmail. It takes these documents and puts them into a huge image dump, doing all the PDF manipulation that I wouldn't in a 100 days figure out how to do. All of this then crushed and extracted by an LLM (Gemini to be precise) to pull out relevant data in structured form that is indexed into a 164MB SQLite database.

Once the data is in, the data is then processed again with LLMs to guess the type of document, what data to could add to the database, and if it's a receipt what the merchant of a transaction, the category this transaction, etc. The categorization of the receipts is a semi-automated affair. I designed a UI where I can both have an automated classification which I approve with one click (like a code review), or I can go in an manually modify the categories all over the UI, during the classification phase or when I look at the transaction lists.

It does all this to build an understanding of all my expenses, to see where my general spending is trending.

Now I can run queries that no one had ever asked for, like how many times I bought smoked salmon, how many espressos I've had last year or even how much sales tax I've paid this year.

Fine doesn't just do spending though, it also tracks my assets like stocks and investment funds. I don't know much about finance APIs, but Claude Code figured out how to get historical exchange rates from frankfurter and also for CSV dumps from MUFG. It figured out how to get historical stock and funds performance data by me just pointing it at certain websites and it finding the CSV files for it. Fine even models my home loan repayments, Claude Code understood the intricacies of Japanese home loans and my peculiar structure of my split loan during my build, built me a model that would allow me to track interest rate changes and also project future interest rate impacts on my finances. All of this just by describing to it my situation and what I wanted it to do.

And then to bring everything all together, I put my financial world into one of the most important Sankey diagram in my life.

All of this now is not only just exposed through a web app, it also it available as an MCP and authed API. I can plug Claude back into something it built and start consulting with it about my finances.
There was no way this could be one-shotted, in fact, this has taken me about 20 days of daily vibe-coding to put together. But really, I didn't write a single line of code in there. I have looked at the code, suggested things it should do, but generally my editor has mainly been for me to watch over it rather than write anything.
Every week I use this to look through my expenses, it will regularly crawl my transaction notifications and digital receipts from my email. It's not as visually interesting as my actual paper receipts, but here's how I setup the crawler to go fetch receipts.

Other fun features for a boring finance app. I have a special blur and demo modes in the top right that will take any sensitive data app-wide and blur it so I can demo this in front of others. That is what you see in all this post.

Craig Mod inspired me to do this. When I heard him describe his 6-day jont building his finance app to deal with his multi-national tax situations, I thought, "I have exactly this problem, and I could have a go at this too." Though, it took me three times longer than he did, and I still haven't gotten to the "do my taxes" final boss yet.
When I look at the code base and the 660 commits I made in 20 days, I can't imagine how this would be possible or financially viable without vibe-coding.

The process also gave me a huge opportunity to experience what it would be like to be a Software Engineer now. The work is still hard to do, you still have to think systematically on how to put a complex piece of software together, test and figure out what needs fixing, what needs adding what are the user (my) requirements, how to teach AI to reuse components, figure out when AI is making it up, and worse of all, what to do when you exhaust your token quotas.
A bit more deeper thoughts to come about this. As I have been telling many others, I'm optimistic for the profession of Software Engineering -- because Software Engineering is not about writing code (otherwise you'd be called a programmer), it's about creating the software that works and works for a long time.
There are going to be more pieces of software we didn't know we could write because we have AI.