A personal expense tracking web app built with Django. It lets users log their expenses, categorize them, set monthly budgets, and view detailed reports and charts.
- ✅ User authentication (login/register)
- 📋 Add, edit, delete expenses
- 💰 Set monthly budgets per user
- 📊 Filter reports (weekly, monthly, yearly, custom)
- 🧾 Charts (pie and line charts) using Chart.js
- 📈 Detect recurring expenses
- 📅 Date-range filtering with automatic summaries
- Backend: Django 4.x
- Frontend: HTML5, Bootstrap 5, Chart.js
- Database: SQLite (default), PostgreSQL (production-ready)
- Others: Django messages framework, custom forms, date parsing
git clone https://github.com/karmakr1920/expense_tracker.git
cd expense-trackerpython -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activatepip install -r requirements.txtpython manage.py migratepython manage.py createsuperuserpython manage.py runserverVisit http://127.0.0.1:8000 in your browser.
-
Register and log in as a user.
-
Go to your dashboard:
- Add new expenses with category and amount.
- View total and remaining budget for the current month.
-
Set or update your monthly budget.
-
Go to the Report section:
- Filter expenses by weekly, monthly, yearly, or custom range.
- View charts and recurring expense patterns.
expense_tracker/
├── tracker/ # Main app: models, views, templates
│ ├── templates/
│ ├── static/
│ └── ...
├── db.sqlite3 # Default dev database
├── manage.py
├── requirements.txt
└── README.md
MIT License. Feel free to fork and improve.
PRs are welcome! Feel free to file issues or feature requests. Note : UI and functionality changes are need to be done.
Feel Free to connect me on Linkedin https://www.linkedin.com/in/navin-kumar-550377223/