Customer App
Dish discovery, cart, checkout, dish details, and customer ordering screens.
A customer ordering experience for browsing a restaurant menu, opening dish details, searching and filtering dishes, saving favorites, managing cart quantities, selecting order type, completing dine-in/takeaway/delivery checkout branches, applying coupon/review context, choosing payment, viewing success confirmation, tracking orders, making reservations, and managing a protected account area.
- Public routes cover home, menu, search, dish details, favorites, restaurant info, help, contact, cart, orders, order details, tracking, reservations, and reservation details.
- Checkout flow branches through order type, dine-in, table context, takeaway, delivery, review, payment, and success.
- Route guards protect takeaway, delivery, checkout review, and checkout success based on required flow context.
- Protected account area includes overview, profile, orders, favorites, reservations, loyalty, reviews, notifications, and settings.
- The app supports light/dark/system theme mode through a customer-facing theme dialog.
Menu Discovery
- Home page gives quick restaurant entry points and current customer-facing context.
- Menu route supports category browsing across dishes.
- Search route adds filtering and sorting for menu discovery.
- Dish detail route supports detailed item information and add-to-cart behavior.
Ordering Flow
- Cart route supports review and quantity edits before checkout.
- Order-type route splits the journey into dine-in, takeaway, and delivery paths.
- Dine-in flow includes direct dine-in setup and table-code context confirmation.
- Takeaway and delivery flows are protected by order-type context, then move through final review, coupon, payment, and success.
Customer Account
- Mock login unlocks the protected account module.
- Account pages cover profile preferences, order history, favorites, reservations, loyalty, reviews, notifications, and settings.
- Order routes cover list, detail, and tracking timeline outside the account area as well.
- Reservation routes support list, create, and detail views for dining plans.
Support And States
- Restaurant info, help, and contact pages add non-transactional customer support content.
- Favorites create intent before ordering.
- The user app has a not-found fallback and a planned explicit unauthorized route.
- Mock/local persistence keeps the demo safe while still showing full ordering behavior.