A Python-based personal finance application designed to help users manage income, expenses, transactions, and financial insights through a simple command-line interface.
Personal Expense Tracker allows users to record and manage their daily financial transactions in one place.
The application stores transaction data locally using JSON and provides tools for searching, filtering, editing, deleting, and analyzing financial records.
Completed and functional.
The application currently supports transaction management, financial summaries, searching, filtering, date-based filtering, editing, deletion, and basic financial analytics.
- Add income
- Add expenses
- View all transactions
- Search transactions
- Filter transactions
- Filter transactions by date
- View financial summary
- View monthly analytics
- View category analytics
- Edit transactions
- Delete transactions
- Validate user input
- Store transaction data using JSON
The application calculates:
- Total income
- Total expenses
- Current balance
The balance is calculated based on total income and total expenses.
The application provides basic financial insights including:
- Monthly transaction analysis
- Category-based expense analysis
- Income and expense comparison
- Overall financial balance
- Add a graphical user interface
- Add data visualization with charts
- Add budget planning and tracking
- Add recurring income and expense support
- Add CSV export and import
- Add advanced financial reports
- Add improved transaction categorization
git clone https://github.com/Varun313/personal-expense-tracker.git
cd personal-expense-trackerpython -m venv venvWindows PowerShell:
venv\Scripts\activatepython app.pyNo external Python packages are required because the project uses Python's built-in libraries.
After starting the application, choose an option from the main menu:
- Add Income
- Add Expense
- View Transactions
- Financial Summary
- Search Transactions
- Filter Transactions
- Filter by Date
- Monthly Analytics
- Category Analytics
- Edit Transaction
- Delete Transaction
- Exit
Transaction data is stored locally in JSON format.
- Python
- JSON
- Git
- GitHub
- VS Code
Personal Expense Tracker
│
├── app.py
├── README.md
├── LICENSE
├── requirements.txt
├── .gitignore
│
├── screenshots/
│ ├── main-menu.png
│ ├── expenses-menu.png
│ ├── financial-summary.png
│ ├── monthly-analytics.png
│ └── transaction-summary.png
│
├── data/
│ └── expenses.json
│
├── ui/
│ ├── analytics.py
│ ├── dashboard.py
│ └── transactions.py
│
└── utils/
├── calculations.py
├── storage.py
└── validators.py
This project is licensed under the MIT License.