How harieswarreddygelli/python-mini-projects works
This repository is a collection of small interactive Python applications: a calculator, an expense tracker, and a typing-speed tester. The calculator accepts menu-driven operations and keeps session history. The expense tracker loads transactions, presents a dashboard, and supports adding, viewing, analyzing, and deleting transactions backed by JSON. The typing tester is documented, but its implementation was not sampled, so its internal flow is not shown.
Main entry points: expensetracker.py Expense menu · caluclator.py Calculator menu · expenses.json Transactions · Typing speed tester Typing speed tester
Components 15
Calculator
- Calculator menu
caluclator.py - Math operations
caluclator.py - Session history
caluclator.py
Expense tracker
- Expense menu
ExpensesTracker/expensetracker.py - Data loading and saving
ExpensesTracker/expensetracker.py - Transactions
ExpensesTracker/expenses.json - Financial dashboard
ExpensesTracker/expensetracker.py - Income and balance
ExpensesTracker/expensetracker.py - Add transaction
ExpensesTracker/expensetracker.py - Transaction history
ExpensesTracker/expensetracker.py - Category analysis
ExpensesTracker/expensetracker.py - Delete transaction
ExpensesTracker/expensetracker.py - Rich terminal UI
Typing tester
- Typing speed tester
Typing speed tester
Other components
- User
Connections 22
- User → Calculator menu: uses
- Calculator menu → Math operations: calls
- Calculator menu → Session history: updates and displays
- User → Expense menu: uses
- Expense menu → Data loading and saving: loads and saves
- Data loading and saving → Transactions: reads and writes
- Expense menu → Financial dashboard: renders
- Financial dashboard → Income and balance: calculates
- Expense menu → Add transaction: dispatches
- Expense menu → Transaction history: dispatches
- Expense menu → Category analysis: dispatches
- Expense menu → Delete transaction: dispatches
- Add transaction → Data loading and saving: saves
- Delete transaction → Transaction history: displays
- Delete transaction → Data loading and saving: saves
- Expense menu → Rich terminal UI: prompts and renders
- Financial dashboard → Rich terminal UI: renders
- Add transaction → Rich terminal UI: prompts and renders
- Transaction history → Rich terminal UI: renders
- Category analysis → Rich terminal UI: renders
- Delete transaction → Rich terminal UI: prompts and renders
- User → Typing speed tester: uses