Skip to content

SrijanSaraswat/Gpay-Expense-Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPay Expense Tracker

This is a Django-based personal expense tracker inspired by the design and functionality of Google Pay's monthly insights. It allows users to upload expenses via CSV, categorize their spending, and visualize monthly data through a clean dashboard interface.

Features

  • User authentication (registration, login, logout)
  • Expense entry via form or CSV upload
  • Categorization of expenses (canteen, hotel, transport, recharge, stationery, others)
  • Monthly and category-wise summary of expenses
  • Interactive dashboard using Chart.js
  • Filtering of expenses by category and month
  • Responsive and modern user interface styled to resemble Google Pay

Technologies Used

Setup Instructions

1. Clone the repository

git clone https://github.com/SrijanSaraswat/gpay-expense-tracker.git
cd gpay-expense-tracker

2. Create a virtual environment and activate it

# On Windows
python -m venv env
env\Scripts\activate

# On macOS/Linux
python3 -m venv env
source env/bin/activate

3. Install dependencies

pip install -r requirements.txt

If requirements.txt is missing, manually install:

pip install django djangorestframework django-crispy-forms

4. Run migrations

python manage.py makemigrations
python manage.py migrate

5. Create a superuser (admin)

python manage.py createsuperuser

6. Start the development server

python manage.py runserver

Visit http://127.0.0.1:8000 in your browser.

Usage Overview

  • Login or register as a user
  • Navigate to the dashboard to view current month’s summary
  • Use the Add Expense form to manually log a transaction
  • Use the Upload CSV page to bulk upload expenses
  • Expenses are categorized and summarized for the selected month
  • Interactive bar chart provides visual insights

CSV Format for Upload

Ensure your CSV is structured as follows:

date,category,amount,description
2025-05-01,canteen,120,Lunch
2025-05-03,transport,50,Bus fare
...

API Endpoints (Optional Extension)

The project is REST-ready. If enabled:

  • /api/expenses/ - List and create expenses
  • /api/upload/ - CSV upload via API
  • /api/summary/?month=5 - Monthly/category summary

Folder Structure

Gpay_Expense_Tracker/
├── Expenses/
│   ├── migrations/
│   ├── templates/
│   │   ├── base.html
│   │   ├── login.html
│   │   ├── dashboard.html
│   │   ├── add_expense.html
│   │   └── upload_csv.html
│   ├── admin.py
│   ├── models.py
│   ├── forms.py
│   ├── views.py
│   └── urls.py
├── Gpay_Expense_Tracker/
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── db.sqlite3
└── manage.py

License

This project is provided for educational and personal use only.

About

GPay-style personal expense tracker built with Django and Chart.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors