This project is part of the NodeJS course and is designed to practice the skills learned throughout the section. The objective is to create an Inventory Management app for an imaginary store. The app allows users to manage categories and items, providing full CRUD (Create, Read, Update, Delete) functionality.
- Categories: Users can create, view, update, and delete categories.
- Items: Users can create, view, update, and delete items within categories.
- CRUD Operations: Full CRUD functionality for both categories and items.
- Customizable Business Type: The app can be adapted to manage inventory for various types of businesses, such as groceries, car parts, toys, musical instruments, etc.
- Backend: Node.js with Express.js
- Database: PostgreSQL
- Views: EJS (Embedded JavaScript) for dynamic HTML rendering
- Styles: CSS for styling the frontend
Before starting, the database schema was designed to define the entities and their relationships. The key entities are:
- Category: Represents different categories of items.
- Item: Represents the individual items within a category.
- Each
Itembelongs to aCategory. - A
Categorycan have multipleItems.
- Node.js
- PostgreSQL
- Clone the repository:
git clone https://github.com/your-username/inventory-app.git
- Navigate to the project directory
cd inventory-app- Install dependencies:
pnpm install- Run the app
pnpm run dev