## DineFlow — Restaurant Discovery & Management Platform
**DineFlow** is a multi-tenant restaurant platform that enables restaurant owners to create and manage their online presence while allowing guests to discover restaurants and explore their offerings.
The platform provides restaurant owners with a complete onboarding and subscription flow, including account registration, subscription package selection, and **Stripe Connect** onboarding for payment management. Each restaurant can have its own branded experience with customizable colors and theming, while the platform maintains a consistent and scalable UI system.
For guests, DineFlow provides a frictionless browsing experience with support for guest accounts. Guest activity and data can be associated with a temporary guest identity and seamlessly migrated to a registered account when the guest signs up or logs in.
### Key Features
* **Restaurant onboarding** — Registration and setup flow for restaurant owners.
* **Subscription management** — Subscription packages and restaurant plan management.
* **Stripe Connect integration** — Restaurant payment and account onboarding.
* **Multi-tenant architecture** — Each restaurant has its own isolated configuration and branded experience.
* **Dynamic restaurant theming** — Custom colors and branding per restaurant.
* **Guest users** — Visitors can interact with the platform without creating an account.
* **Guest-to-user migration** — Guest activity and associated data can be transferred when the guest registers or logs in.
* **Restaurant discovery** — Users can browse and discover restaurants through the platform.
* **Authentication** — Session-based authentication supporting both registered and guest users.
* **Responsive UI** — Optimized experience across desktop and mobile devices.
### Technology Stack
**Frontend:** React, Next.js, TypeScript, Material UI
**Backend:** Node.js, Express, TypeScript
**Database:** MongoDB, Mongoose
**Authentication:** Session-based authentication
**Payments:** Stripe Connect
**Infrastructure:** Docker, AWS/EC2, Nginx, Cloudflare
### Architecture Highlights
DineFlow was designed with scalability and multi-tenancy in mind. Restaurant-specific configuration, branding, subscriptions, and user interactions are handled independently while sharing the same underlying platform.
A key part of the architecture is the **guest identity system**, which allows anonymous visitors to build up activity before authentication. When a guest eventually creates an account or signs in, their existing guest-associated data can be linked to their authenticated user account, providing a seamless transition without losing their activity.
The platform also integrates **Stripe Connect** to support restaurant-level payment onboarding, allowing DineFlow to operate as a platform connecting restaurants with its payment infrastructure.