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> |
||
|---|---|---|
| .. | ||
| components | ||
| constants | ||
| design-system | ||
| features | ||
| hooks | ||
| pages | ||
| services | ||
| types | ||
| index.ts | ||
| README.md | ||
Hospitality Module (Torbat Food)
Commercial product: Torbat Food
Route prefix: /hospitality
Backend: hospitality-service port 8009
BFF: /api/hospitality/*
Structure
modules/hospitality/
├── components/ # Portal shell, CRUD factory, bundle gate
├── constants/ # Navigation, permissions
├── design-system/ # Tokens, table page, status chips
├── features/ # Page implementations (54 routes)
├── hooks/ # Capabilities, lookups
├── pages/ # Shared loaders/errors
├── services/ # hospitality-api.ts
└── types/ # DTO-aligned types
Architecture
- Thin routes in
app/hospitality/**/page.tsxre-export fromfeatures/ - Business logic lives exclusively under
modules/hospitality/ - Shared UI from
@/components/ds(design system) - TanStack Query keys:
["hospitality", tenantId, ...]
Capabilities
Navigation and pages respect GET /capabilities feature flags and bundle licensing via HospitalityBundleGate.
Scripts
node scripts/gen-hospitality-api.mjs # Regenerate API client
node scripts/scaffold-hospitality-module.mjs # Regenerate routes + feature stubs