Skip to content

Deox00/Inventory-Management-System

Repository files navigation

Inventory Management System – README

Overview

This project is a console-based Inventory Management System built using C++ and Object-Oriented Programming (OOP). It helps manage products, stock levels, prices, and availability while using a clean class structure and file handling for data persistence.

Features

  • Add, remove, and search products
  • Update stock quantities
  • Track pricing and availability
  • View complete product list
  • Persistent storage using text files
  • Simple menu-driven console interface

OOP Concepts Used

  • Classes & Objects: Product, Inventory
  • Encapsulation: Private attributes + getters/setters
  • Inheritance: Optional subclasses (e.g., PerishableProduct)
  • Polymorphism: Overridable display/calculation functions
  • File Handling: Read/write inventory data from .txt files

Project Structure

/src
  |-- main.cpp
  |-- Product.h / Product.cpp
  |-- Inventory.h / Inventory.cpp
/data
  |-- products.txt
README.md

How to Build & Run

Compile

g++ src/*.cpp -o inventory_app

Run

./inventory_app

Requirements

  • C++11 or newer
  • Any standard compiler (G++, Clang, MSVC)

Installation

  1. Install a C++ compiler (recommended: G++).
  2. Download or clone the project folder.
  3. Ensure the data directory exists with read/write permissions.
  4. Compile using the build command above.

Usage Guide

Main Menu Options

  • 1. Add Product – Enter ID, name, price, and quantity.
  • 2. Remove Product – Remove using product ID.
  • 3. Search Product – Search by ID or keyword.
  • 4. Update Stock – Increase or decrease quantity.
  • 5. View All Products – Display all items.

Data File Example (products.txt)

101|USB Cable|150|47
102|Notebook|40|120

Example Commands

Add product:

Enter Product ID: 301
Enter Name: Bluetooth Speaker
Enter Price: 1200
Enter Quantity: 10

Update stock:

Enter Product ID: 301
Enter New Quantity: 15

Future Enhancements

  • Admin authentication
  • Sales reporting and analytics
  • Category-based product filtering
  • Expiry tracking for perishable items
  • GUI or web-based version

Contribution

  1. Fork the project.
  2. Create a feature branch.
  3. Commit clean, structured code.
  4. Open a pull request.

Contact

For any issues or suggestions, feel free to update the README or improve the project.

About

A C++ console-based Inventory Management System built with OOP. Manages products, stock levels, pricing, and updates with persistent file storage. Uses clean class design, encapsulation, and modular structure—ideal for learning practical OOP in C++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages