StockPulse is a modern offline-first inventory and sales management system for small businesses. It helps shops track products, stock levels, purchases, sales, low-stock alerts, and profit visibility without needing a cloud ERP.
Built for retail stores, cosmetic shops, pharmacies, electronics stores, clothing shops, wholesalers, spare-parts stores, mini-markets, small distributors, and e-commerce sellers.
| Demo | URL | Description |
|---|---|---|
| Inventory Demo | labssynova-coder.github.io/stockpulse/ | Browser demo with bundled mock data. Click Try Demo Mode to explore dashboard, products, inventory, purchases, sales, suppliers, customers, reports, alerts, audit trail, cycle count, and settings. |
| Windows Installer | StockPulse v1.0.0 | Download the installable offline desktop MVP for Windows with local SQLite storage. |
The public demo runs entirely in the browser and does not save to a server. The desktop app is the real offline product for business data.
After installing the desktop app:
- Email:
admin@stockpulse.local - Password:
admin123
Change the default password before real business use.
StockPulse answers the daily questions small businesses actually ask:
- What products do I currently have?
- Which products are running low?
- How much stock value do I have?
- Which products sell best?
- How much revenue and profit am I making?
- Dashboard with product, stock, sales, profit, and alert metrics
- Product, category, SKU, barcode, brand, cost, selling price, and variant support
- Supplier and customer management
- Purchase orders with stock receiving
- Sales with automatic stock reduction
- Oversell prevention
- Printable sales invoices
- Inventory movement audit trail
- Low-stock alerts
- Reports and analytics
- Cycle count workflow
- Offline local SQLite storage
- Windows desktop installer
- Static browser demo for GitHub Pages
| Layer | Technology |
|---|---|
| Desktop shell | Electron |
| Frontend | React, Vite, TypeScript |
| Backend | Express, TypeScript |
| Database | SQLite, Prisma |
| Packaging | electron-builder |
| Live demo | GitHub Pages static build with demo mode |
- Documentation Home
- Product Overview
- Installation Guide
- Live Demo Guide
- Testing Checklist
- Deployment Notes
Install dependencies:
npm installRun web client and API:
npm run devRun Electron development mode:
npm run dev:electronBuild frontend and backend:
npm run buildPackage Windows installer:
npm run electron:distThe installer is generated at:
dist-electron/StockPulse-Setup-1.0.0.exe
This repository includes a prebuilt static demo in docs/demo.
To refresh the demo locally:
VITE_STATIC_DEMO=true npm run buildThen copy client/dist into docs/demo. The demo uses hash routing and mock data, so it works on GitHub Pages without a backend or GitHub Actions workflow permissions.
After pushing, enable GitHub Pages in repository settings:
- Open
Settings->Pages. - Set source to
Deploy from a branch. - Select branch
masterand folder/docs. - Add the Pages URL to the repository About section.
Before publishing a release:
npm run lint --workspace=client
npm run build
npm run electron:distThen install the generated .exe on a clean profile and verify:
- Login works with default admin credentials.
- Product, supplier, customer, purchase, and sale workflows work.
- Purchase receiving increases stock.
- Sale completion decreases stock.
- Oversell attempts are blocked.
- Main pages render without visible or console errors.
Desktop app data is stored in:
%APPDATA%\stockpulse\data\stockpulse.db
Support log:
%APPDATA%\stockpulse\data\stockpulse.log
No license has been selected yet. Add a license before publishing publicly if you want others to reuse, modify, or distribute the code.
