← back~/projects/stocknest

StockNest

hard
NestJSTypeScriptPostgreSQLMikroORMReactTailwind CSS

StockNest lets teams track products, manage stock levels across multiple storage locations, and maintain a full audit log of every inventory change. It supports two roles — Admin (full CRUD) and User (read-only) — with JWT authentication stored in httpOnly cookies and CSRF protection on all state-changing requests.

  • ▸Product, category, supplier, and location management with full CRUD for admins
  • ▸Per-product, per-location inventory tracking with conflict prevention
  • ▸Immutable audit log automatically records every inventory add, update, and removal
  • ▸Dashboard low-inventory alerts backed by a daily cron job checking stock thresholds
  • ▸JWT authentication via httpOnly cookies with CSRF double-submit protection and Argon2 password hashing
  • ▸Role-based access control — Admins get full CRUD, Users get read-only access
  • ▸Built with NestJS 11, MikroORM, and PostgreSQL on the backend; React 19, TypeScript, and Tailwind CSS on the frontend
  • ▸Light/dark theme toggle persisted to localStorage, Recharts inventory visualizations, and Swagger API docs at /api/docs