Technical Architecture
The recommended stack, hosting model, integrations, and scaling path.

Visual direction
Architecture that starts practical and scales cleanly
The recommended stack balances fast MVP delivery with clear paths for tenant isolation, realtime events, provider adapters, asset scaling, and deployment control.
Next.js + TypeScript
One product surface for guest app, dashboard, APIs, and webhooks.
Supabase Postgres
Transactional source of truth for orders, payments, tenants, reports, and roles.
Supabase Auth + RLS + RBAC
Restaurant, branch, role, and staff isolation built into data access.
Supabase Realtime
Kitchen screens, live order status, waiter calls, and admin dashboard updates.
Cloudflare R2 + CDN
Lower-cost scalable storage for menu photos, logos, QR assets, and exports.
Zoho ZeptoMail
Transactional emails for receipts, invitations, notifications, and reports.
Provider adapter layer
Supports Stripe, PayPal, or any provider the client supplies without locking the platform.
Dedicated server + Dokploy/Coolify
Preferred scale path, with Vercel as a fast MVP alternative.
Postgres transactions
Cloudflare + dedicated hosting
Zoho ZeptoMail
Architecture decisions to present
Use provider adapters for payments so Stripe, PayPal, or client-supplied providers can be swapped without rewriting core order logic.
Keep Postgres as the transactional source of truth and use realtime only as an event delivery layer, not as the final accounting record.
Use Cloudflare for asset delivery and protection while keeping hosting flexible: Vercel for speed or dedicated server with Dokploy/Coolify for cost control.
Treat every restaurant, branch, table, staff member, and export as tenant-scoped from the beginning.