-
Notifications
You must be signed in to change notification settings - Fork 1
Architecture
Collins Dada edited this page Apr 22, 2025
·
2 revisions
The architecture of Expense Tracker is designed to be clean, modular, and student-developer friendly. This is how all the moving parts sync all up.
| Module | Description |
|---|---|
| app.py | Main entry point. Ties everything together. |
| backend/ | Handles income/expense data, filtering logic, calculations. |
| data/ | Stores user session data in local files (JSON/CSV). |
| ui/ | Streamlit layout logic, input widgets, and chart rendering. |
-
Written in Python
-
Uses
Pandasfor data manipulation -
Functions include:
-
add_income() -
add_expense() -
load_data() -
filter_data()
-
-
JSON files used for local storage
-
Optimized to be storage-lite
-
Easy to extend into cloud (Firebase, Supabase, etc.)
-
Renders user input fields, charts, filters
-
Reacts to changes in real-time
-
Responsive and intuitive flow for users
-
Uses
Matplotlib+Plotlyto render:-
Pie Charts
-
Bar Graphs
-
Line Charts
-
-
All updates reflect user interactions instantly
-
No third-party storage by default
-
All data saved locally
-
No analytics, tracking, or shady background jobs