Smart Inventory – Stock Management and Analytics by Nitu AlamSmart Inventory – Stock Management and Analytics by Nitu Alam

Smart Inventory – Stock Management and Analytics

Nitu Alam

Nitu Alam

InvenTrack — Smart Inventory and Supply Chain Tracker

InvenTrack is a full-stack inventory management application built to help small and growing businesses track stock, manage suppliers, monitor inventory movements, and identify products that may require reordering.
The project combines a Django REST API with a React interface and adds real-time updates, barcode scanning, operational reports, notifications, and experimental demand forecasting.

Business problem

Inventory records are often distributed across spreadsheets and manually updated systems. This can make it difficult to answer basic operational questions:
What stock is currently available?
Which products are approaching their reorder point?
Where and why did inventory quantities change?
Which supplier is associated with a product?
Which products may run out based on recent demand?
InvenTrack brings these workflows into one application with searchable records, transaction history, reports, and automated alerts.

Features

Product, category, supplier, and location management
Current stock and available-quantity tracking
Inbound and outbound stock transaction history
Barcode and QR-code scanning from a mobile-friendly interface
Low-stock and critical-stock notifications
Email and optional Twilio SMS alerts
Real-time updates using Django Channels and WebSockets
PDF and Excel report generation
Demand forecasting using historical stock movements
Estimated stockout dates and reorder recommendations
React dashboard with Bootstrap and Chart.js visualisations

Tech Stack

Backend

Python
Django 5.2.5
Django REST Framework

Frontend

React 18
Bootstrap 5
Chart.js

Real-time communication

Django Channels
WebSockets

Background processing

Celery

Data and forecasting

pandas, NumPy, scikit-learn

Development database

SQLite

Notifications

Gmail SMTP, Twilio

Barcode scanning

QuaggaJS

Forecasting approach

The demand-prediction service converts outbound stock transactions into a daily demand series. Calendar attributes such as day of week, day of month, month, and weekend status are used as features for a Random Forest regressor.
The application also estimates stockout dates from recent average consumption. These predictions are experimental decision-support features; they are not a replacement for human purchasing decisions or a production forecasting system.

Local setup

1. Clone the Repository


2. Backend Setup


3. Frontend Setup


4. Configuration

Copy config.example.py to config.py
Fill in your email and SMS credentials
For Gmail, enable 2FA and use App Password

5. Run the Application


Configuration

Email Setup (Gmail)

Enable 2-Factor Authentication
Generate App Password
Update config.py with App Password

SMS Setup (Twilio)

Create Twilio account
Get Account SID and Auth Token
Purchase phone number
Update config.py with credentials

Project Structure


API Endpoints

/api/products/ - Product management
/api/inventory/ - Inventory tracking
/api/notifications/ - Notification settings
/api/analytics/ - Analytics and predictions
/api/reports/ - Report generation

Development

Running Tests


Database Migrations


Frontend Development


Production Deployment

Set environment variables for sensitive data
Use PostgreSQL for production database
Configure proper SMTP settings
Set up Redis for Celery
Use nginx and gunicorn for serving

Contributing

Fork the repository
Create feature branch
Commit changes
Push to branch
Create Pull Request

Screenshots

Current status and limitations

This is a portfolio application and is not currently presented as production-ready software. Before production deployment, it needs stronger automated test coverage, environment-based security configuration, PostgreSQL and Redis configuration, forecasting validation, and deployment monitoring.

Author

Developed by CoderNitu.
Like this project

Posted Sep 13, 2026

Built a Django inventory system with stock tracking, supplier metrics, low-stock alerts, automated orders, analytics and exportable reports.