Introduces modules/hospitality with 54 routes, BFF proxy, capability-gated nav, CRUD factory, and architecture validation docs. Co-authored-by: Cursor <cursoragent@cursor.com>
1.8 KiB
1.8 KiB
Hospitality Responsive Report
Date: 2026-07-26
Product: Torbat Food
Breakpoints strategy
Mobile-first Tailwind utilities aligned with shared DS:
| Breakpoint | Layout behavior |
|---|---|
< lg |
Hidden sidebar; hamburger opens full-height drawer |
≥ lg |
Fixed 256px sidebar (w-64), content flex-1 |
sm |
Dashboard stat grid 2 columns |
xl |
Dashboard stat grid 4 columns |
Component responsiveness
| Component | Mobile | Tablet | Desktop |
|---|---|---|---|
HospitalityPortalShell |
Drawer nav | Drawer nav | Persistent sidebar |
HospitalityTablePage |
Horizontal scroll via DataTable | Full width search | Search max-w-md |
| Dashboard StatCards | Stack 1→2 cols | 2 cols | 4 cols |
| Dialogs | Full-width modal (DS) | Centered | Centered |
| Hub card | max-w-lg centered | Same | Same |
Touch targets
- Nav links:
py-2.5(~40px+ height) - Icon buttons: DS
size="icon"minimum - Mobile menu button in header
Performance on mobile
- Route-level code splitting via Next.js dynamic imports (default App Router)
- TanStack Query
staleTimeon capabilities (60s) reduces refetch - Paginated lists (20 items) limit DOM size
RTL on small screens
- Mobile drawer anchors from right (
absolute right-0) - Search icon positioned for RTL input padding
Testing checklist
- iPhone SE: open drawer, navigate to menu items
- iPad: sidebar visible at lg
- Desktop 1920px: dashboard 4-column stats
- Dark mode toggle on mobile header/footer
Lighthouse notes
- Use real backend in dev for accurate TTFB
- Images in menu media use refs only (no binary in hospitality service)
- Minimize layout shift: LoadingState skeletons on route transitions