How murali4421/retailpulse works
RetailPulse is a shop-management SPA and backend for cashier checkout, stock operations, reporting, multi-store administration, identity, and compliance. The main flow is staff using the web app, which routes to operational views; those views use an API client to reach backend routes and domain controllers, which persist state and emit audit events. Offline sales use local storage and a sync manager to reconcile with the API. README capabilities such as backup, reports, MFA, and compliance are retained; unsampled implementation details are represented by their exact directories.
Main entry points: App.tsx Retail SPA · api.js API routes · api.ts API and WebSocket client · store.js Shop database
Components 31
Retail Operations
- Retail SPA
frontend/src/App.tsx - Checkout POS
frontend/src/pages/POS.tsx - Inventory UI
frontend/src/pages/Inventory.tsx - Trends dashboard
frontend/src/pages/Dashboard.tsx - Sales history
frontend/src/pages/SalesHistory.tsx - Barcode scanner
frontend/src/components/BarcodeScannerModal.tsx - Daily reports
frontend/src/components/DailyReportModal.tsx - Security audit UI
frontend/src/pages/SecurityAudit.tsx - Compliance hub
frontend/src/pages/Compliance.tsx - Store administration
frontend/src/pages/MultiStore.tsx - Settings UI
frontend/src/pages/Settings.tsx
Offline and Sync
- Offline sales database
frontend/src/services/offlineDb.ts - Local encryption
frontend/src/services/cryptoStorage.ts - Sync manager
frontend/src/services/syncManager.ts
API and Identity
- API and WebSocket client
frontend/src/services/api.ts - Session and permissions
frontend/src/services/authContext.tsx - API routes
backend/src/routes/api.js - Authentication
backend/src/controllers/authController.js - OIDC tokens
backend/src/services/oidcService.js - MFA service
backend/src/services/mfaService.js
Shop Services
- Inventory operations
backend/src/controllers/inventoryController.js - Sales processing
backend/src/controllers/salesController.js - Privacy operations
backend/src/controllers/complianceController.js - Store operations
backend/src/controllers/storeController.js - Backup snapshots
backend/src/services/backupService.js - Audit queries
backend/src/controllers/auditController.js - Backup controls
backend/src/controllers/backupController.js - Shop settings
backend/src/controllers/settingsController.js
Persistence and Audit
- Shop database
backend/src/data/store.js - Audit and threat rules
backend/src/services/auditService.js
Other components
- Shop staff
Connections 48
- Shop staff → Retail SPA: uses
README.md - Retail SPA → Checkout POS: routes to
frontend/src/App.tsx - Retail SPA → Inventory UI: routes to
frontend/src/App.tsx - Retail SPA → Trends dashboard: routes to
frontend/src/App.tsx - Retail SPA → Sales history: routes to
frontend/src/App.tsx - Retail SPA → Security audit UI: routes to
frontend/src/App.tsx - Retail SPA → Compliance hub: routes to
frontend/src/App.tsx - Retail SPA → Store administration: routes to
frontend/src/App.tsx - Retail SPA → Settings UI: routes to
frontend/src/App.tsx - Checkout POS → Barcode scanner: opens
frontend/src/pages/POS.tsx - Inventory UI → Barcode scanner: opens
frontend/src/pages/Inventory.tsx - Trends dashboard → Daily reports: opens
frontend/src/pages/Dashboard.tsx - Sales history → Daily reports: opens
frontend/src/pages/SalesHistory.tsx - Checkout POS → Offline sales database: queues sales
frontend/src/pages/POS.tsx - Offline sales database → Local encryption: encrypts data
frontend/src/services/offlineDb.ts - Sync manager → Offline sales database: reads queue
frontend/src/services/syncManager.ts - Sync manager → API and WebSocket client: submits sales
frontend/src/services/syncManager.ts - Checkout POS → API and WebSocket client: requests operations
README.md - Inventory UI → API and WebSocket client: requests operations
frontend/src/pages/Inventory.tsx - Trends dashboard → API and WebSocket client: requests data
frontend/src/pages/Dashboard.tsx - Sales history → API and WebSocket client: requests data
frontend/src/pages/SalesHistory.tsx - Security audit UI → API and WebSocket client: requests logs
frontend/src/pages/SecurityAudit.tsx - Compliance hub → API and WebSocket client: requests safeguards
frontend/src/pages/Compliance.tsx - API and WebSocket client → API routes: calls REST API
README.md - API routes → Authentication: dispatches auth
backend/src/routes/api.js - API routes → Inventory operations: dispatches inventory
backend/src/routes/api.js - API routes → Sales processing: dispatches sales
backend/src/routes/api.js - API routes → Audit queries: dispatches audit
backend/src/routes/api.js - API routes → Privacy operations: dispatches compliance
backend/src/routes/api.js - API routes → Backup controls: dispatches backups
backend/src/routes/api.js - API routes → Store operations: dispatches stores
backend/src/routes/api.js - API routes → Shop settings: dispatches settings
backend/src/routes/api.js - Session and permissions → API and WebSocket client: authenticates through
frontend/src/services/authContext.tsx - Authentication → OIDC tokens: issues tokens
backend/src/controllers/authController.js - Authentication → MFA service: verifies factors
backend/src/controllers/authController.js - Authentication → Shop database: reads and saves
backend/src/controllers/authController.js - Inventory operations → Shop database: reads and saves
backend/src/controllers/inventoryController.js - Sales processing → Shop database: reads and saves
backend/src/controllers/salesController.js - Inventory operations → Audit and threat rules: records events
backend/src/controllers/inventoryController.js - Sales processing → Audit and threat rules: records events
backend/src/controllers/salesController.js - Authentication → Audit and threat rules: records events
backend/src/controllers/authController.js - Audit queries → Audit and threat rules: queries logs
backend/src/controllers/auditController.js - Privacy operations → Shop database: reads data
backend/src/controllers/complianceController.js - Privacy operations → Audit and threat rules: records events
backend/src/controllers/complianceController.js - Store operations → Shop database: reads and saves
backend/src/controllers/storeController.js - Backup controls → Backup snapshots: triggers snapshots
- Backup snapshots → Shop database: reads records
backend/src/services/backupService.js - Backup snapshots → Audit and threat rules: records activity
backend/src/services/backupService.js