Skip to content

MdIrfan-ul/ExpenseTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ExpenseTracker

Project Overview

This Expense Tracker application is designed to help users manage their personal finances. It allows users to track their income and expenses, categorize their transactions, set budgets, and receive alerts. The application also provides graphical reports and analytics for better financial planning.

Site Overview

Live:

Technologies Used

My Skills

Technologies Used

  • Frontend: React.js, Redux, CSS Modules
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • State Management: Redux Toolkit
  • Styling: CSS Modules
  • Charting: Chart.js
  • Authentication: Jwt token
  • Alerts:Nodemailer

Features:

  • User Authentication: Secure login and registration for users using token based Authentication.
  • Expense and Income Tracking: Add, edit, and delete income and expense transactions.
  • Category-wise Breakdown: Categorize transactions for better insights.
  • Budget Setting and Alerts: Set monthly budgets and receive alerts when limits are exceeded using nodemailer.
  • Graphical Reports and Analytics: Visual representation of financial data through charts and graphs.

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • Node.js
  • npm
  • MongoDB

Installation

  1. Clone the repo
    git clone https://github.com/MdIrfan-ul/ExpenseTracker.git
  2. Install NPM packages for frontend
    cd frontend
    npm install
  3. Install NPM packages for backend
    cd backend
    npm install
  4. Create a .env file in the backend folder and add your MongoDB URI and Firebase configuration details:
MONGO_URI=YOURMONGOURI
PORT=PORTNUMBER
JWT_SECRET_KEY=YOURSECRETKEY
EMAIL_USER=YOUREMAIL
EMAIL_PASS=YOURPASS
  1. Run the server
cd backend
npm start
  1. Run the frontend
cd frontend
npm start

Folder Structure

ExpenseTracker/
├── frontend/               # React frontend
│   ├── public/
│   ├── src/
│   ├── .env
│   └── package.json
├── backend/               # Node.js backend
│   ├── config/
│   ├── controllers/
│   ├── models/
│   ├── routes/
│   ├── .env
│   └── package.json
├── .gitignore
├── README.md

Usage

  • Register/Login: Create an account or log in with existing credentials.
  • Dashboard: View summary of your financial status.
  • Add Transaction: Add income or expense transactions.
  • Set Budget: Set monthly budgets and receive alerts when limits are exceeded.
  • Reports: View graphical reports and analytics for better financial insights.

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Developed with ❤️ by [Mohamed Irfanullah M]


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published