This Inventory Management Application is an API designed to help businesses manage their inventory, purchase orders, suppliers etc. efficiently.
-
Category Management: Create, update, and delete product categories.
-
Item Management: Manage product items, including name, short & long description, price, and quantity.
-
Supplier Management: Keep track of suppliers, including their contact details.
-
Store Management: Manage stores with location, type, and opening date.
-
Inventory Control: Keep inventory information for stores, manage quantity, and set thresholds, find inventories at threshold.
-
Purchase Orders: Create, approve, and track purchase orders with various statuses, update store inventory when purchase order is delivered.
-
User Management: Admin can create user, and assign roles and stores to user.
-
Exception Handling: Most Exceptions have been handled using a CustomizedErrorHandler.
-
Testing: WIP
- Frontend: A User interface built using Next.js React Framework, Typescript and TailwindCSS, the repository, hosted on Vercel here.
- Backend: API is currently hosted on Azure Web Apps here with a Swagger UI here
- Slide Show with Demo: Slide Show
- If you are not seeing any data from the backend, please be patient, the free tier on Azure is very very slow on the first request, you should see a loading icon on the Frontend while the request is being processed.
Before you begin, ensure you have met the following requirements:
- Java Development Kit (JDK) installed.
- Apache Maven for building and packaging the application.
-
Clone the repository:
git clone https://github.com/refinedblessing/inventory-management.git
-
Navigate to the project directory:
cd inventory-management
-
Build the project using Maven:
mvn clean package
-
Run the application:
java -jar target/inventory-management.jar
The application will be accessible at http://localhost:8080
Access the application in your web browser by navigating to http://localhost:8080. Use the web interface to create, update, or delete categories, items, stores, and purchase orders. Manage your inventory, view purchase orders, and track your suppliers.
I use Swagger UI https://inventory-master.azurewebsites.net/swagger-ui/index.html#/