How darktotem/supply-hub-inventory-management-system works
This is an inventory and operations management application: role-based staff use a React client to manage stock, suppliers and supply orders, warehouse deliveries and reports, sales, invoices, and accounts. The Flask API exposes these workflows and persists domain records through SQLAlchemy models. The sampled server code confirms several controller-to-model calls and app registrations; frontend-to-API links and some client capabilities are inferred from the file tree, so those links are dashed and unverified.
Main entry points: app.py Flask app · App.jsx Client shell · auth.py Authentication API · supply.py Supply API
Components 34
Staff client
- Client shell
client/src/App.jsx - Inventory screens
client/src/features/inventory/inventory.jsx - Sales screens
client/src/features/sales/sales.js - Customer screens
client/src/features/sales/customers.jsx - Customer orders
client/src/features/sales/customer_orders.jsx - Supply screens
client/src/features/supply/supply_orders.jsx - Supplier screens
client/src/features/supply/reg_suppliers.jsx - Supply history
client/src/features/supply/history.jsx - Login screen
client/src/features/auth/login.jsx - Employee admin
client/src/features/admin/employees.jsx - Audit dashboard
client/src/features/auditor/audit_dashboard.jsx - Invoice screens
client/src/features/finance/invoices.jsx - Payment screens
client/src/features/finance/payment.jsx - Warehouse screens
client/src/features/wearhouse/add_product.jsx - Delivery screens
client/src/features/wearhouse/deliveries.jsx - Report screens
client/src/features/wearhouse/reports.jsx
API workflows
- Supply API
server/controllers/supply.py - Inventory API
server/controllers/inventory.py - Invoice API
server/controllers/invoice.py - Sales API
server/controllers/sales.py - Warehouse API
server/controllers/warehouse.py
Identity and access
- Authentication API
server/controllers/auth.py
Domain records
- User accounts
server/models/user.py - Inventory records
server/models/inventory.py - Supplier records
server/models/supplier.py - Supply history
server/models/supply_history.py - Customer records
server/models/customer.py - Customer orders
server/models/customer_history.py - Invoice records
server/models/invoice.py - Inventory reports
server/models/report.py - Audit records
server/models/audit_log.py
Server runtime
- Flask app
server/app.py - DB extensions
server/extensions.py
Other components
- Staff user
Connections 48
- Staff user → Client shell: uses
- Staff user → Login screen: signs in
- Client shell → Inventory screens: offers
- Client shell → Sales screens: offers
- Client shell → Customer screens: offers
- Client shell → Customer orders: offers
- Client shell → Supply screens: offers
- Client shell → Supplier screens: offers
- Client shell → Supply history: offers
- Client shell → Employee admin: offers
- Client shell → Audit dashboard: offers
- Client shell → Invoice screens: offers
- Client shell → Payment screens: offers
- Client shell → Warehouse screens: offers
- Client shell → Delivery screens: offers
- Client shell → Report screens: offers
- Inventory screens → Flask app: calls API
- Supply screens → Flask app: calls API
- Warehouse screens → Flask app: calls API
- Flask app → Authentication API: registers
server/app.py - Flask app → Supply API: registers
server/app.py - Flask app → Invoice API: registers
server/app.py - Flask app → Sales API: registers
server/app.py - Flask app → Warehouse API: registers
server/app.py - Flask app → DB extensions: initializes
server/app.py - Flask app → User accounts: imports
server/app.py - Flask app → Inventory records: imports
server/app.py - Flask app → Invoice records: imports
server/app.py - Flask app → Supplier records: imports
server/app.py - Flask app → Supply history: imports
server/app.py - Flask app → Audit records: imports
server/app.py - Flask app → Customer records: imports
server/app.py - Flask app → Customer orders: imports
server/app.py - Authentication API → User accounts: queries
server/controllers/auth.py - Authentication API → DB extensions: commits
server/controllers/auth.py - Authentication API → Audit records: logs via
server/controllers/auth.py - Authentication API → User accounts: validates with
server/controllers/auth.py - Authentication API → User accounts: authenticates via
server/controllers/auth.py - Authentication API → DB extensions: loads user via
server/controllers/auth.py - Supply API → Supplier records: queries
server/controllers/supply.py - Supply API → Supply history: creates and reads
server/controllers/supply.py - Supply API → Inventory records: looks up
server/controllers/supply.py - Supply API → DB extensions: commits
server/controllers/supply.py - Warehouse API → Inventory records: reads and updates
server/controllers/warehouse.py - Warehouse API → Supply history: reads and updates
server/controllers/warehouse.py - Warehouse API → Inventory reports: creates and reads
server/controllers/warehouse.py - Warehouse API → DB extensions: commits
server/controllers/warehouse.py - Inventory reports → Inventory records: queries
server/models/report.py