Inspiration
Managing finances can be overwhelming, especially for students, families, and low-income groups who lack access to professional tools. We wanted to create a simple, beginner-friendly, and accessible finance tracker that empowers users to understand, manage, and improve their spending habits—right from their browser.
What it does
FinWise is a personal finance web app that allows users to:
Log income and expenses
Visualize spending with pie charts
Track balance and categories over time
Export data as CSV
Log in securely to access personalized data
Get financial tips for smarter decisions
How we built it
Frontend: HTML, CSS, Bootstrap, JavaScript (Jinja templates in Flask)
Backend: Python with Flask
User Auth: Flask-Login with hashed credentials
Storage: JSON files for user data and entries
Data Viz: Matplotlib for pie charts
Challenges we ran into
1.Managing secure user authentication with JSON-based storage
2.Handling dynamic updates and visualization without refreshing the page
3.Making the UI simple and responsive across devices
Accomplishments that we're proud of
1.Built a fully functional budgeting app from scratch
2.Added secure login system with Flask-Login
3.Designed clean and responsive user interface
4.Integrated real-time expense chart generation
5.Ensured all features work without relying on databases or third-party APIs
What we learned
1.Deep understanding of Flask’s routing, session management, and decorators
2.How to implement user authentication securely with password hashing
3.Creating visualizations dynamically with Matplotlib
4.Structuring a full-stack Python app that works smoothly end-to-end
What's next for FineWise
1.Add multi-user data storage using SQLite or MongoDB
Support bar/line charts for monthly trends
Enable budgeting alerts or weekly spending summaries
Build a mobile version using Flutter or React Native
Translate the app to multiple languages
Integrate basic AI to suggest saving plans or detect anomalies in spending

Log in or sign up for Devpost to join the conversation.