TorbatYar/frontend/modules/hospitality
Mortezakoohjani 31a0a34945 feat(loyalty): add complete Loyalty Platform Frontend module
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>
2026-07-27 10:46:45 +03:30
..
components feat(loyalty): add complete Loyalty Platform Frontend module 2026-07-27 10:46:45 +03:30
constants feat(loyalty): add complete Loyalty Platform Frontend module 2026-07-27 10:46:45 +03:30
design-system feat(loyalty): add complete Loyalty Platform Frontend module 2026-07-27 10:46:45 +03:30
features feat(loyalty): add complete Loyalty Platform Frontend module 2026-07-27 10:46:45 +03:30
hooks feat(loyalty): add complete Loyalty Platform Frontend module 2026-07-27 10:46:45 +03:30
pages Add complete Torbat Food hospitality frontend connected to backend APIs. 2026-07-26 20:54:26 +03:30
services Add complete Torbat Food hospitality frontend connected to backend APIs. 2026-07-26 20:54:26 +03:30
types Add complete Torbat Food hospitality frontend connected to backend APIs. 2026-07-26 20:54:26 +03:30
index.ts Add complete Torbat Food hospitality frontend connected to backend APIs. 2026-07-26 20:54:26 +03:30
README.md Add complete Torbat Food hospitality frontend connected to backend APIs. 2026-07-26 20:54:26 +03:30

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.tsx re-export from features/
  • 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