Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

💸 Expense Tracker System

📖 Overview

Expense Tracker System is a Java-based desktop application designed to help users efficiently manage and track their income and expenses. The application provides a user-friendly interface built with Java Swing, enabling users to record transactions, categorize expenses, monitor financial activities, and generate detailed reports.

The system uses MySQL for database management, BCrypt for secure password encryption, iText for PDF report generation, and Apache POI for Excel file creation.


✨ Features

  • 🔐 Secure User Registration and Login
  • 💰 Income and Expense Management
  • 🏷️ Transaction Categorization
  • 📊 Real-Time Balance Tracking
  • 📈 Income and Expense Analysis
  • 📝 Edit and Delete Transactions
  • 📄 PDF Report Generation
  • 📑 Excel Report Export
  • 🗄️ MySQL Database Integration
  • 🎨 User-Friendly Java Swing Interface

🛠️ Technologies Used

Technology Purpose
Java Core Application Development
Java Swing Graphical User Interface
MySQL Database Management
JDBC Database Connectivity
BCrypt Password Encryption
iText PDF Report Generation
Apache POI Excel File Generation

🚀 Getting Started

Prerequisites

Before running the application, ensure you have:

  • Java JDK 8 or later installed
  • MySQL Server installed and running
  • Properly configured database connection
  • Required external libraries added to the project

Installation

  1. Clone the repository:
git clone https://github.com/Neelamcod12/Expense-Tracker-System.git
  1. Open the project in your preferred IDE (IntelliJ IDEA, Eclipse, or NetBeans).

  2. Configure the MySQL database and update database credentials.

  3. Add all required libraries from the lib folder.

  4. Compile and run the project.


📱 Application Usage

1. User Authentication

  • Create a new account or log in using existing credentials.
  • Passwords are securely encrypted using BCrypt.

2. Dashboard

After login, users can view:

  • 👤 User Information
  • 💵 Current Balance
  • 📈 Total Income
  • 📉 Total Expenses
  • 🔘 Navigation Buttons
  • 🔄 Logout Option

3. Transaction Management

Add Transaction

Users can enter:

  • Amount
  • Transaction Type (Income/Expense)
  • Category
  • Date
  • Description

View Transaction History

Users can:

  • Browse transaction records
  • Edit transaction details
  • Delete transactions

4. Generate Reports

Export financial reports in:

  • 📄 PDF Format
  • 📊 Excel (XLSX) Format
  • 📋 CSV Format
  • 📑 TXT Format

📂 Project Structure

src/
│
├── com/
│   └── expenseTracker/
│       ├── backend/
│       │   ├── Database Connectors
│       │   ├── Data Storage
│       │   └── Utility Classes
│       │
│       ├── frontend/
│       │   ├── GUI Frames
│       │   ├── Panels
│       │   └── UI Components
│       │
│       ├── main/
│       │   └── Main Application Entry Point
│       │
│       └── test/
│           └── Unit Tests
│
├── resources/
│   └── assets/
│       └── images/
│
└── lib/
    ├── MySQL Connector
    ├── BCrypt
    ├── iText
    └── Apache POI

📸 Screenshots

Add project screenshots here:

  • Login Screen
  • Registration Screen
  • Dashboard
  • Add Transaction
  • Transaction History
  • Report Generation

🗄️ Database Schema

The database schema includes:

  • User Management
  • Transaction Records
  • Expense Categories
  • Income Categories

Add your schema image here:

assets/images/database-schema.png

🔒 Security Features

  • Password Hashing using BCrypt
  • Secure Authentication System
  • Protected User Data Storage

📈 Future Enhancements

  • Monthly Expense Analytics
  • Interactive Charts and Graphs
  • Budget Planning Module
  • Email Notifications
  • Cloud Database Support
  • Dark Mode UI

👩‍💻 Author

Neelam Kumari


📄 License

This project is licensed under the MIT License.

Feel free to use, modify, and distribute this project according to the license terms.


⭐ If you found this project useful, don't forget to star the repository!

About

# Expense Tracker System A Java-based desktop application that helps users manage and track their income and expenses efficiently. Developed using Java Swing, the system provides an intuitive interface for recording transactions, categorizing expenses, and maintaining organized financial records for better expense management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages