2
0 Comments

How I Built a Personal Finance App with Amazon Bedrock’s Claude Sonnet 3.5, EKS, and other AWS Services

https://assetsmaven.com

Three years ago, my family and I relocated to Florida. Along with the warmer weather and beach life, we also experienced a significant spike in our credit card spending. This unexpected rise in expenses made me realize how crucial it was to have a better handle on our finances. That’s when I decided to create an app that has since transformed the way we manage our money.

Categories of line items — click on each bar to see details
The app I developed allows users to upload their credit card and bank statements in PDF format, as well as take snapshots of their receipts, and then automates the entire process. It itemizes and categorizes transactions, providing insightful analytics and a powerful search functionality. But that’s just the beginning — the app also generates graphs and detailed analyses, making it easier to understand and manage your spending habits.

The Tech Stack: From LLMs to Kubernetes and Lambda
Building this app was an exciting challenge. I leveraged Amazon Bedrock’s Claude Sonnet 3.5, a cutting-edge large language model (LLM), to manage the complexities of natural language processing and data categorization. Claude Sonnet 3.5 was instrumental in making the app smart enough to understand and sort through the vast amounts of data that users upload.

In addition to the LLM, I used Amazon Textract for extracting text and data from documents. The backend of the app is powered by a combination of Kubernetes and AWS Lambda.

Textract in action
On the storage side, I utilized AWS S3 for storing user-uploaded files and Amazon DocumentDB for managing structured data. To manage communication between different parts of the app, I used Amazon SQS, which helps ensure everything runs smoothly, even under heavy load.

Key Features: Search, Graphs, and In-Depth Analysis
The app is more than just a transaction tracker. It offers a suite of features designed to give users a deeper understanding of their finances:

Search Functionality: The app allows users to search through their transactions with ease. Whether you’re looking for a specific purchase or trying to find all transactions related to a certain category, the search functionality makes it simple.
Graphs and Visualizations: Visualizing data is key to understanding it. The app generates a variety of graphs that show spending trends, categorize expenses, and highlight patterns that might otherwise go unnoticed.
In-Depth Analysis: Beyond just itemizing expenses, the app provides detailed analyses of your spending habits. It helps identify unnecessary subscriptions, recurring charges, and other financial insights that can save you money.
Discovering Hidden Costs: Uncovering Unnecessary Subscriptions
One of the most useful features of the app, at least for me, has been its ability to identify unnecessary subscriptions. For instance, I discovered three subscriptions that had been silently draining money, including a $19.99 monthly charge for an Adobe account we hadn’t used in ages. Thanks to the app, I was able to cancel those subscriptions and save some cash.

Subscriptions analysis
Looking Ahead: Opening the App to the Public
I’m opening the app to the public today! The architecture and technology behind it have been fun to work with, and I plan to share more details in future posts. If you’re a developer, you’ll definitely want to stay tuned — I’ll be discussing some of the more technical aspects, such as handling context window limits in LLMs, ensuring response continuity, and the interplay between Kubernetes and Lambda.

In the meantime, if you’re curious about the product, you can check out the homepage at https://assetsmaven.com.

Stay tuned for more insights and updates as I continue to refine and expand the app. Your financial health might just thank you for it!

Please share this Medium article with others who might be interested in personal finance, app development, or simply keeping a closer eye on their spending. Feedback is always welcome as I continue to improve and iterate on the app.

on August 25, 2024