Skip to content

KAMIslayer47/InventoryManagementSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inventory Management System (Java Swing)

A modern, theme-enabled, multi-user Inventory Management System built using pure Java and Swing.
The application supports user authentication, per-user inventory storage, activity logging, CSV import/export, low-stock alerts, and a clean dark/light UI.


Features

1. Multi-User Login System

  • Sign Up / Login functionality
  • Each user has their own separate inventory file
  • Credentials stored in /users/<username>.user
  • Inventories stored in /inventories/<username>.dat

2. Inventory Management

  • Add, Edit, Delete items
  • Increase / Decrease stock quantity
  • Reorder level support
  • Real-time search filtering

3. Low Stock Alerts

  • Items below threshold highlighted
  • Dedicated low-stock report window
  • Displays recommended restock quantity

4. Activity Log

  • Logs all user actions (add, edit, delete, stock change, import/export, low-stock view)
  • Timestamped entries
  • Viewable in a separate Activity Log window

5. CSV Import / Export

  • Import inventory from CSV
  • Export current table to CSV
  • Handles bad format entries safely

6. Theme Switching

  • Toggle between Dark Mode and Light Mode
  • Colors update across the entire UI
  • Activity Log and table styling update accordingly

7. Auto Save & Auto Load

  • Loads inventory automatically on login
  • Saves inventory automatically on logout
  • Each user’s inventory is isolated

How to Run

  1. Install JDK 8 or higher.

  2. Compile the program:

  3. Run:

  4. Create an account using Sign Up, then log in.


Project Structure

InventoryManagementSystem.java

/users/ -> user credential files

/inventories/ -> per-user inventory data files


Tech Used

  • Java 8+
  • Swing (JFrame, JDialog, JTable, JScrollPane, BoxLayout, BorderLayout)
  • Custom cell renderers
  • Java Serialization
  • File I/O (BufferedReader, PrintWriter, Object streams)

Notes

  • Activity log resets each session (not saved to file)
  • Passwords stored in plain text (simple academic implementation)
  • Data is local-only (no server/cloud storage)

License

Free to use for academic and educational purposes.

About

This is a purely java based application that is used primarily to explain the concepts of java like object oriented programming , abstraction , polymorphism , inheritence.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages