Guided Demo Studio
The Guided Demo Studio is a built-in practice coach. It explains every RestroAI module, highlights the exact screen element, offers safe Try It actions, tracks progress, and lets a user pause, refresh, restart, or resume after leaving the page.
Where To Open It
Open /demo-studio after logging in as a central Admin.
Use this for platform, installer, settings, payments, roles, permissions, and whole-product orientation.
Open /r/{tenant}/demo-studio after logging in to a paid tenant.
Use this for restaurant setup, menu, POS, KDS, waiter PWA, QR, inventory, customers, reports, and AI.
Floating Guide Panel
The floating guide box is draggable on desktop and becomes a bottom guide on mobile. It has six tabs:
- Overview: what the step is, why it matters, and a plain-English example.
- Do This: exact action, demo values, safe Try It buttons, and action log.
- Effects: what changes downstream in POS, KDS, inventory, reports, or AI.
- Check: required and optional checklist items before moving on.
- Deep Dive: route, permission, plan gate, selector, troubleshooting, and developer note.
- Activity: proof log for action runs, checks, branch choices, pauses, resumes, and skips.
Safe Try It Actions
Safe actions can focus a target, open a drawer, prefill a field, apply a filter, verify a table row, verify a chart, copy a demo value, or open a public QR preview. They do not perform final business mutations. The user must still click the real app button and confirm with the normal Swal yes/no, loading Swal, and appToast result flow.
Tour Coverage
| Tour | Who Uses It | What It Covers |
|---|---|---|
| Whole App Guided Demo | Owner / Manager | Tenant dashboard through setup, menu, POS, KDS, waiter, QR, inventory, guests, reports, and AI. |
| Platform / SaaS | Central Admin | Tenants, plans, subscriptions, invoices, lifecycle, Mailpit, sandbox payments. |
| Installer, Settings, Mailpit | Central Admin / Buyer | Install order, branding, mail testing, first admin checks. |
| Payments Sandbox | Admin / Support | Simulator, gateway sandbox health, payment requests, transactions, refunds, webhooks. |
| Roles And Permissions | Admin / Developer | Protected roles, permission glossary, repair and audit commands. |
| Restaurant Setup | Owner / Manager | Branches, floors, tables, stations, settings, staff, plan usage. |
| Visual Floor Lab | Manager | Templates, object palette, layers, snapshots, conflict-safe layouts. |
| Menu Operations | Manager / Chef | Catalog, variants, modifiers, branch pricing, drafts, QA, import/export, AI copy. |
| POS Cashier | Cashier / Manager | Shift, cart, bills, payments, receipts, refunds, voids, manager PIN. |
| POS Operations | Manager | Recovery dashboard, pending payments, shift reconciliation, settings, QA. |
| KDS | Kitchen | Station tickets, timers, ready/served states, sound, print, waiter notifications. |
| Waiter PWA | Waiter | Assigned tables, mobile ordering, offline drafts, sync, bill request, alerts. |
| Table Map And QR | Manager / Waiter | Published maps, QR codes, guest cart, upsells, waiter approval, heatmap. |
| Inventory | Inventory Manager | Ingredients, units, suppliers, receiving, recipes, stock, wastage, counts, reports. |
| Customers, Loyalty, Reservations | Host / Manager | Customer 360, loyalty, coupons, gift cards, reservation calendar, waitlist, reminders. |
| Reports And AI | Owner / Manager | Charts, heatmaps, drilldowns, exports, AI evidence, resolve/dismiss actions. |
Module Examples
Open POS tour, choose Cashier branch, focus the terminal, open cart drawer, review split bill, then verify receipt/KOT output.
Open Inventory tour, verify ingredient table, receive demo purchase order, inspect recipe cost card, and check stock ledger.
Commands
php artisan demo:seed-restroai --tenant=restroai-demo
php artisan demo:refresh-restroai --tenant=restroai-demo --module=*
php artisan demo:reset-restroai --tenant=restroai-demo
php artisan guided-demo:validate-restroai --tenant=restroai-demo
php artisan access:audit --fail-on-drift
Restart, Refresh, Reset
- Restart: sends the current guided session back to step one.
- Refresh: reloads demo data for the current module and keeps the tour session.
- Reset: removes only records tagged as demo data, then prepares a clean demo state.
- Pause/Resume: stores progress in the database and localStorage so browser refresh does not lose context.
Troubleshooting
Open the route shown in Deep Dive, confirm the user has the listed permission, then click Replay or Try It again.
Check the tenant plan. KDS, Waiter PWA, QR, inventory, gift cards, reservations, and AI depend on plan features.
Run demo seed or refresh. Reset only affects demo-tagged records.
Run php artisan auth:ensure-admin admin@ovion.tech and php artisan access:audit --fail-on-drift.
Developer Notes
- Tour definitions live in
config/restroai_demo.php. - Every step should include a route, selector, permission, expected result, safe action, check, troubleshooting text, and developer note.
- Selectors use
data-demo-anchorwhere possible. Fallback selectors are allowed for older screens. - Safe actions are handled by the guided-demo JS and validated by server-side services before execution.
- Progress, tasks, branches, and events are recorded for audit and support.