Mall Inventory Management App is a web-based platform where customers can search products across stores, get recommendations, and use image-based search, while managers can manage products, inventory, orders, and carousel ads. The app consists of three main components:
- Client (Frontend) – React-based application
- Server (Backend) – Node.js with Express
- FastAPI (ML Model/API) – Python FastAPI backend
Mall Inventory Management App/
├── client/ # React frontend
├── server/ # Node.js backend
├── fastapi/ # Python FastAPI backend
└── README.md # Documentation
Ensure you have the following installed:
Before cloning the repository, ensure that Git LFS is installed to handle large files (like the ML models).
- Install Git LFS by running:
git lfs install
-
Navigate to the client folder:
cd client -
Install the necessary dependencies:
npm install
-
Run the client:
npm run dev
The frontend will be accessible at
http://localhost:5173/.
-
Navigate to the
serverfolder:cd server -
Install the necessary dependencies:
npm install
-
Run the server:
nodemon server.js
The backend will be accessible at
http://localhost:3000.
- Download the ML Model from Google Drive: 📥 ML Model Drive Link
- Create a folder named
ml_modelsinside thefastapidirectory:mkdir fastapi/ml_models
- Paste the downloaded model file inside the
ml_modelsfolder.
-
Navigate to the
fastapidirectory:cd fastapi -
Create a virtual environment for Python:
python3 -m venv venv # Create a virtual environment -
Activate the environment:
- For macOS/Linux:
source venv/bin/activate - For Windows:
venv\Scripts\activate
- For macOS/Linux:
-
Install the necessary dependencies:
pip install -r requirements.txt
-
Run the FastAPI server:
uvicorn fastapi_app:app --host 0.0.0.0 --port 5050 --reload
The FastAPI server will be accessible at
http://localhost:5050.
-
Start all three servers in the following order:
a. Start FastAPI server:
cd fastapi source venv/bin/activate # or venv\Scripts\activate on Windows uvicorn fastapi_app:app --host 0.0.0.0 --port 5050 --reload
b. Start Node.js backend:
cd server nodemon server.jsc. Start React frontend:
cd client npm run dev -
Open your browser and navigate to
http://localhost:3000to access the application.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
