Inspiration
In the United States, many people struggle with basic financial planning, and it's surprisingly easy to take on loans that look manageable at first but become overwhelming later. Between confusing terms and complicated budgeting apps, a lot of Americans make major financial decisions without simple, clear information. We wanted to create a simple app that people can use without being overwhelmed by complicated features.
What it does
It allows users to track their income, expenses, and loan payments. The monthly budget is easy to view on the dashboard, where there is a comprehensive spending breakdown. Users can track one-time purchases as well as recurring expenses and income like salary, utilities, and rent. When a user registers a loan, it is automatically factored into their monthly expenses. These features are simple and easy to use, built for people who struggle with their finances.
How we built it
Backend – Python, FastAPI, Pydantic, SQLite, Uvicorn
Frontend – Vanilla JavaScript, HTML, CSS, Chart.js
Architecture – RESTful API
Challenges we ran into
UI Formatting – Making the website’s proportions look good even after user input dynamically changes the page.
Virtual Monthly Transactions – If a recurring loan, expense, or income is created, the template is stored once in the database, but the individual monthly instances are not stored; they are computed on a month-by-month basis. This approach reduces database bloat and ensures changes to recurring transactions automatically propagate across months. This system was difficult to develop.
Accomplishments that we’re proud of
I'm proud to have built a tool that makes financial management more accessible to people who feel intimidated by budgeting and loans. By simplifying complex decisions into clear, instant insights, the app can help Americans avoid debt and take control of their finances. Most importantly, the app addresses the widespread issue of financial illiteracy with a solution designed for everyone.
What we learned
Throughout this experience, I learned a lot about all aspects of the tech stack. Specifically, FastAPI was one element of the stack that I really enjoyed working with and learning the basics of. It was great to see how each component of the stack integrated with the others to build my application.
What's next for LedgerLeaf
LedgerLeaf is just a minimum viable product, so there are many features I would like to add.
CSV/PDF Export – For better record keeping.
Mobile Device Support – Most people would use an app like this on mobile.
Live Deployment – The app is currently hosted locally on my machine along with the database.
Savings Goals – This feature would be very useful.
Account Registration – There is currently no user authentication.
In the future, I hope LedgerLeaf or similar apps can help people who struggle to budget and make Americans more financially responsible.
Built With
- css
- fastapi
- html
- javascript
- pydantic
- python
- sqlite
- uvicorn
Log in or sign up for Devpost to join the conversation.