Smart Inventory for Smart Shopkeepers.
NeverOut is an AI-powered inventory management and alerting platform designed specifically for Kirana shopkeepers. It tracks stock levels, sends automated zero-click WhatsApp alerts before items run out, and uses machine learning to predict upcoming seasonal demand.
- Multi-Tenant Dashboard: Secure, isolated inventory management per user via Clerk authentication and MongoDB.
- Automated WhatsApp Alerts: Twilio integration automatically sends warnings when stock drops below user-defined thresholds, and emergency alerts when items go out of stock.
- ML Demand Insights: Analyzes past sales data using Scikit-Learn to predict seasonal peak/off-peak months and categorize products into High/Normal/Low demand.
- Beautiful UI: A vibrant, scroll-animated landing page and interactive dashboard built using a custom design system with glassmorphism aesthetics.
- Auto-Seeding: Automatically seeds new users with default grocery inventory and sample sales data so they can test the ML insights instantly.
Frontend
- React.js + Vite
- Clerk (Authentication)
- Vanilla CSS (Custom Design System, Particles, Scroll Animations)
- React Router
Backend
- Python / Flask
- MongoDB Atlas (Multi-tenant Database)
- Twilio API (WhatsApp Messaging)
- Scikit-Learn & Pandas (Machine Learning Engine)
- PyJWT & Cryptography (Clerk Token Verification)
Navigate to the backend directory and install dependencies:
cd backend
python -m venv venv
source venv/bin/activate # On Windows use: venv\Scripts\activate
pip install -r requirements.txtCreate a backend/.env file with the following:
DATABASE_URI=mongodb+srv://<username>:<password>@<cluster>.mongodb.net/?appName=NeverOut
CLERK_DOMAIN=your-clerk-domain.accounts.dev
TWILIO_ACCOUNT_SID=your_twilio_sid
TWILIO_AUTH_TOKEN=your_twilio_token
TWILIO_FROM_NUMBER=whatsapp:+14155238886
TWILIO_CONTENT_SID=your_twilio_template_sid
WHATSAPP_PHONE=whatsapp:+91<your_number>Run the API:
python app.pyOpen a new terminal in the root directory:
npm installCreate a .env file in the root directory:
VITE_CLERK_PUBLISHABLE_KEY=pk_test_...
VITE_API_URL=http://localhost:5000/apiStart the dev server:
npm run devThis application is designed to be split-deployed on Render.com:
- Backend deployed as a Python Web Service.
- Frontend deployed as a Static Site (Vite), communicating with the backend via the
VITE_API_URLenvironment variable.
Built to help local shopkeepers sell smarter, not harder.