How kotaroison/finbuddy works
FinBuddy is a Streamlit personal-finance dashboard. Users record expenses, then review spending, check monthly budget progress, request AI tips, or export transaction and report files. These workflows are implemented together in main.py rather than split into separate modules. The graph reflects the explicit CSV and export-file operations and the optional Gemini integration; requirements.txt lists dependencies but does not establish additional runtime components.
Main entry points: main.py Streamlit dashboard
Components 11
User interface
- Streamlit dashboard
main.py
Finance features
- Expense entry
main.py - Spending dashboard
main.py - Budget planner
main.py - AI insights
main.py - Export reports
main.py
Persistence
- Transaction storage
main.py - Transactions CSV
main.py - Report files
main.py
Integrations
- Gemini API
Other components
- User
Connections 16
- User → Streamlit dashboard: uses
- Streamlit dashboard → Expense entry: renders
- Streamlit dashboard → Spending dashboard: renders
- Streamlit dashboard → Budget planner: renders
- Streamlit dashboard → AI insights: renders
- Streamlit dashboard → Export reports: renders
- Streamlit dashboard → Transaction storage: loads data
- Transaction storage → Transactions CSV: reads/writes
- Expense entry → Transaction storage: saves
- Spending dashboard → Transaction storage: uses loaded data
- Budget planner → Transaction storage: uses loaded data
- AI insights → Transaction storage: summarizes loaded data
- AI insights → Gemini API: requests tips
- Export reports → Transaction storage: uses loaded data
- Export reports → Report files: writes report
- Streamlit dashboard → User: shows results