Welcome to InveTrack

Complete Inventory Management System Documentation

About InveTrack

InveTrack is a comprehensive inventory operations platform that unifies product catalogs, suppliers, clients, orders, and warehouse stock levels into a single command center. Built with modern web technologies, it gives operations teams a real-time view of inventory health across every location.

The application combines operational workflows with analytics and AI-assisted recommendations so teams can forecast demand, avoid stockouts, and streamline procurement-to-fulfillment cycles.

  • Operations teams monitor stock positions, transfers, and order fulfillment without leaving the dashboard.
  • Supply chain leaders track KPIs, analyze movement trends, and leverage forecasting to plan replenishment.
  • Administrators configure organizations, roles, and automation rules to fit each business unit.

Core Capabilities

  • Dashboard & Analytics: At-a-glance KPIs, category insights, supplier contribution charts, and recent activity feeds.
  • Product & Catalog Management: SKU-level controls, category hierarchies, pricing, media attachments, and bulk actions.
  • Multi-Location Inventory: Automatic quantity tracking per site, reserved stock calculations, and granular stock movement history.
  • Order Lifecycle: Purchase and sales order pipelines with receiving, cancellation, and fulfillment workflows that sync with inventory.
  • Partners Directory: Dedicated supplier and client modules with searchable contact information and role-based permissions.
  • Reporting & Insights: Critical stock alerts, stock summaries, purchase/sales performance, slow-moving goods, and OpenAI-powered forecasts.
  • Governance & Audit: Role-based access control, configurable settings, activity logs, and secure file/document management.

System Requirements

  • Node.js: Version 20 or higher (tested with Node 20 and 22) plus npm 10+
  • MySQL: Version 8.0+ (minimum 5.7) with a user that can create databases, tables, and triggers
  • Developer Tools: Git for version control and a terminal with Bash or PowerShell
  • RAM: Minimum 4GB (8GB recommended for running client and server simultaneously)
  • Storage: At least 3GB free space for dependencies, database files, and build artifacts
  • Optional Integrations: OpenAI API key for advanced forecasting, cross-sell, and pricing insights
  • Operating System: Windows 10+, macOS 10.15+, or Linux (Ubuntu 20.04+)

Frontend

React 19 with TypeScript

Vite dev/build tooling with Tailwind CSS + RTL support

Radix UI, TanStack Query, React Hook Form, Zod validation

Backend

Node.js (Express 5) REST API

Sequelize ORM with MySQL2 driver and migrations

JWT auth, Multer file uploads, OpenAI-assisted insights

Data & Automation

MySQL schema with seeders for roles, users, and defaults

Inventory & reserved quantity calculators kept in sync via hooks

Utility scripts for data maintenance and status reconciliation

Operations

Multi-location inventory with stock movement tracking

Purchase & sales order lifecycle with automatic reservations

Comprehensive reporting, forecasting, and audit history

Quick Start Guide

  1. Install system prerequisites (Node.js 20+, npm 10+, Git, and MySQL 8+) if they are not already available.
  2. Clone or download the InveTrack repository and open the project in your preferred editor.
  3. Start MySQL and create an empty database to match your desired DB_NAME (the defaults use common_project_dev).
  4. Navigate to the server directory and run npm install to install backend dependencies.
  5. Create server/.env with values such as DB_HOST, DB_PORT, DB_NAME, DB_USERNAME, DB_PASSWORD, JWT_SECRET, and optionally OPENAI_API_KEY plus cache toggles.
  6. Run npm run db:migrate to apply Sequelize migrations and create the schema.
  7. Run npm run db:seed to bootstrap roles, the admin user, and sample configuration.
  8. Launch the backend with npm run dev; the API listens on http://localhost:3000 by default.
  9. Open a new terminal, navigate to the client directory, and run npm install to install frontend dependencies.
  10. Create client/.env and set VITE_API_URL=http://localhost:3000/api (adjust if the server runs on another host or port).
  11. Start the client with npm run dev and visit http://localhost:5173 to load the app.
  12. Sign in with the seeded admin credentials admin@example.com / admin123, then update organization settings, locations, and users as needed.