Scaffold frontend/modules/loyalty with types, API client, design system, feature pages, and thin App Router routes. Wire all screens to backend Loyalty service via BFF proxy. Add loyalty docs and update progress. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| .. | ||
| beauty | ||
| crm | ||
| hospitality | ||
| sports-center | ||
| README.md | ||
frontend/modules/
Status: Scaffold — business modules not migrated yet
Phase: Migration Phase 1 (shared architecture creation)
Purpose
Future home for self-contained business module packages. Each module will own its routes (via app/ re-exports or colocated route adapters), components, hooks, API client, and types — without importing sibling modules.
Current state
| Module | Status | Location |
|---|---|---|
| beauty | ✅ Migrated | modules/beauty/ — see beauty-migration-report.md |
| hospitality | ✅ Migrated | modules/hospitality/ — Torbat Food |
| accounting | Legacy | components/accounting/, lib/accounting-api.ts |
| healthcare | Legacy | components/healthcare/, lib/healthcare-api.ts |
| admin | Legacy | components/admin/ |
Business modules not yet migrated remain in legacy paths until their migration phase:
| Module ID | Route prefix | Legacy component root | Legacy API client |
|---|---|---|---|
| accounting | /accounting |
components/accounting/ |
lib/accounting-api.ts |
| beauty | /beauty |
components/beauty/ |
lib/beauty-business-api.ts |
| healthcare | /healthcare |
components/healthcare/ |
lib/healthcare-api.ts |
| admin | /admin |
components/admin/ |
lib/api.ts |
CRM and other future modules will be scaffolded here when added.
Planned structure (per module)
modules/
└── {module-id}/
├── README.md # Module ownership and boundaries
├── components/ # Module-only UI (portals, pages, DS)
├── hooks/ # Module-only hooks
├── api/ # Module API client (split from lib/)
├── types/ # Module TypeScript types
└── constants/ # Nav configs, feature flags
Import rules
- Modules MAY import from
shared/and platform utilities (lib/auth.ts,lib/utils.ts). - Modules MUST NOT import from other
modules/*or legacycomponents/{other-module}/. app/{module}/routes stay unchanged during Phase 1; they continue importing legacy paths.