A full-stack expense management application built with React, Flask, MySQL, Docker, and Kubernetes to help users efficiently track income, expenses, and financial records.
📖 About
Expense Tracker is a full-stack web application that enables users to securely manage their personal finances by tracking income, expenses, and transaction history through an intuitive dashboard.
The application uses a React frontend and a Flask backend with MySQL as the database. It also includes Docker and Kubernetes configurations to demonstrate containerized deployment and orchestration.
--
📸 Application Preview
✨ Features
- 🔐 User Authentication
- 💰 Income & Expense Management
- 📊 Dashboard Overview
- 📅 Transaction History
- 🗂 Category-wise Expense Tracking
- 🐳 Dockerized Deployment
- ☸ Kubernetes Deployment Configuration
- 💾 MySQL Database Integration
🏗 Architecture
flowchart TD
A[👤 User] --> B[React Frontend]
B -->|HTTP Requests| C[Flask REST API]
C --> D[JWT Authentication]
D --> E[Expense Management Service]
E --> F[(MySQL Database)]
subgraph Database
F --> G[Users]
F --> H[Income]
F --> I[Expenses]
F --> J[Categories]
end
subgraph Deployment
B
C
F
end
Deployment --> K[Docker]
K --> L[Kubernetes]
🛠 Tech Stack
| Category | Technologies |
|---|---|
| Frontend | React.js, CSS, Axios |
| Backend | Flask (Python) |
| Database | MySQL |
| Containerization | Docker |
| Orchestration | Kubernetes |
📂 Project Structure
Expense-Tracker
│
├── frontend/
├── backend/
├── kubernetes/
├── Dockerfile
├── docker-compose.yml
└── README.md
⚙ Getting Started
git clone https://github.com/Kushagrahms/expense-tracker.gitcd backend
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txtpython run.pycd frontend
npm install
npm run devdocker compose up --buildkubectl apply -f kubernetes/📌 Future Improvements
- Export Reports (PDF/Excel)
- Email Notifications
- CI/CD Pipeline
👨💻 Author
Kushagra Shrivastava
If you found this project useful, feel free to ⭐ the repository.