InventoryAI is an advanced inventory management system that leverages artificial intelligence to optimize stock levels, predict demand, and streamline operations.
InventoryAI integrates a Next.js frontend, a Node.js (Express) backend, and Python-based AI models within a monorepo structure to provide a seamless and efficient inventory management solution.
The primary goal of InventoryAI is to assist businesses in maintaining optimal inventory levels, reducing holding costs, and preventing stockouts by utilizing AI-driven demand forecasting and real-time inventory tracking.
- Real-Time Inventory Tracking: Monitor stock levels across multiple locations in real-time.
- AI-Powered Demand Forecasting: Predict future inventory requirements using machine learning models.
- Automated Reordering: Set up automatic purchase orders based on predefined thresholds.
- Comprehensive Reporting: Generate detailed reports on inventory performance and trends.
- User-Friendly Interface: Intuitive Next.js frontend for easy navigation and management.
- Robust Backend: Scalable Node.js (Express) backend handling API requests and business logic.
- Advanced AI Models: Python-based models for accurate demand forecasting.
- Monorepo Structure: Unified codebase for streamlined development and deployment.
Check out the live demo: InventoryAI Demo
- Frontend: Next.js, React, Tailwind CSS
- Backend: Node.js, Express.js, MongoDB
- AI Models: Python, TensorFlow, scikit-learn
- Package Management: pnpm
- Monorepo Tooling: Turborepo
The project follows a monorepo structure managed by Turborepo:
InventoryAI/
├── apps/
│ ├── web/ # Next.js frontend application
│ └── backend/ # Node.js (Express) backend application
├── packages/
│ ├── ui/ # Shared UI components
│ ├── eslint-config/ # Shared ESLint configurations
│ └── tsconfig/ # Shared TypeScript configurations
├── models/ # Python AI models
├── .vscode/ # VSCode settings
├── package.json # Root package.json
├── pnpm-workspace.yaml# pnpm workspace configuration
└── turbo.json # Turborepo configuration
Follow these steps to set up the project locally:
-
Node.js: Ensure Node.js is installed. Download Node.js
-
Python: Ensure Python 3.x is installed. Download Python
-
pnpm: Install pnpm globally using npm:
npm install -g pnpm
git clone https://github.com/dev-huddle/InventoryAI.git
cd InventoryAI
Install the dependencies for the entire monorepo:
pnpm install
Start the development servers for both frontend and backend:
-
Frontend (Next.js):
pnpm --filter web dev
-
Backend (Express.js):
pnpm --filter backend dev
-
AI Models (Python):
cd models pip install -r requirements.txt python app.py
The frontend will be accessible at http://localhost:3000
, the backend at http://localhost:5000
, and the AI models as configured.
We welcome contributions! Please follow these steps:
-
Fork the Repository: Click the 'Fork' button on the GitHub page.
-
Create a Branch: Create a new branch for your feature or bugfix.
git checkout -b feature-name
-
Make Changes: Implement your changes in the codebase.
-
Commit Changes: Commit your changes with a descriptive message.
git commit -m "Add feature-name"
-
Push to GitHub: Push your branch to your forked repository.
git push origin feature-name
-
Create a Pull Request: Navigate to the original repository and create a pull request from your branch.
InventoryAI is developed and maintained by Dev Huddle.