Tech stack: JavaScript, React, React Testing Library, Jest, HTML, CSS, Node.js, Express.js, MongoDB Atlas, Mongoose, MaterialUI

Project Links


Gallery


Project screenshot 1
Project screenshot 2
Project screenshot 3
Project screenshot 4

Description


This application was made with the intention of being used in a home, school or office type environment to be accessed by clients on the local network. With the help of Material-UI, the client side of this program is fully responsive and easy to use both on desktop and mobile devices. The GUI is comprised of three main parts: the main table, the expiring soon panel and the low stock panel. The main table is where all the inventory items displayed. The main table features a search bar and also buttons to perform CRUD operations on the items.

All items have the following attributes: item name, quantity, room, location, expiration date and low stock alert. Items with an expiration date set are monitored by the program and are added to the expiring soon panel when the expiration date is two weeks away or less. Each day, the program will compile a list of items expiring the following day and will notify all users by sending them an email alert.

Items with the low stock alert turned on are be monitored by the program so that when the quantity of the item falls to 1, it is added to the list of items low in stock. From there, a user can choose to send a low stock alert, which will send emails to specified users with the list of low stock items.

GitHub ReadMe


Inventory Management System

A M.E.R.N stack application for keeping track of items.

General Info

This application was made with the intention of being used in a home, school or office type environment to be accessed by clients on the local network.

Application features:

  • Main table

    • Displays all items in a tabular format
    • Search for items by name
    • Add, edit, remove and delete items from the inventory
  • Low stock alert panel

    • Displays a list of items which have a low stock alert active
    • Sends emails to selected users with a list of items which are low in stock
  • Expiring soon panel

    • Displays a list of items soon to expire
    • Sends email alerts to users with a list of items expiring the following day
  • Settings

    • Edit rooms and locations
    • Add and remove email addresses from the email list

Material-ui was used to style the components.

Screenshots

Adding a new item:

add_new_item

Adding items already in the inventory:

add_existing_item

Editing an item:

editing_item

Removing items:

remove_item

Adding new rooms and locations:

locations-tab

Sending a 'low stock alert' email:

sending-email

projects