My Rezto
SaaS multi-tenant en Symfony que permite a un restaurante desplegar en pocos minutos su sitio web corporativo y su carta digital interactiva, multilingüe y pensada para el móvil en sala.
Ver la página web
Apercu du projet
Plataforma SaaS multi-tenant que permite a un restaurante desplegar en pocos minutos su web de presentación y su carta digital interactiva: página de presentación, menú, blog, información práctica, horarios, alérgenos, guía. Cada restaurante es un tenant aislado, accesible mediante /{slug}/, con su propio back-office.
En la sala, un carrito móvil permite al comensal componer su selección en el teléfono y generar un resumen para mostrar o leer al camarero, descargable en PDF. Es una ayuda de memoria, no un embudo de pedido en línea (sin pago, sin e-commerce).
El gran plus: el comensal compone el pedido en su propio idioma, y el resumen para leer al camarero aparece en el idioma del restaurante, con la traducción del cliente justo debajo. Se acabó la barrera del idioma en la mesa, especialmente útil en zonas turísticas y en el mundo de las tapas.
Stack
Back: Symfony 6.4, Doctrine con filtro tenant personalizado (aislamiento multi-tenant robusto), EasyAdmin, PHPUnit
Front del cliente: Turbo + Stimulus, Tailwind v4, Vite (HMR / build)
Arquitectura: pipeline de EventSubscribers ordenados por prioridad (resolución del tenant por slug, activación del filtro Doctrine, bloqueo de restaurantes inactivos tras el firewall), subidas de archivos limitadas por tenant, carrito en sesión aislado por slug
i18n: FR / EN / ES, traducciones de carta asistidas por IA, lectura del pedido en el idioma del restaurante
PDF: generación en el servidor del resumen del pedido
En la sala, un carrito móvil permite al comensal componer su selección en el teléfono y generar un resumen para mostrar o leer al camarero, descargable en PDF. Es una ayuda de memoria, no un embudo de pedido en línea (sin pago, sin e-commerce).
El gran plus: el comensal compone el pedido en su propio idioma, y el resumen para leer al camarero aparece en el idioma del restaurante, con la traducción del cliente justo debajo. Se acabó la barrera del idioma en la mesa, especialmente útil en zonas turísticas y en el mundo de las tapas.
Stack
Back: Symfony 6.4, Doctrine con filtro tenant personalizado (aislamiento multi-tenant robusto), EasyAdmin, PHPUnit
Front del cliente: Turbo + Stimulus, Tailwind v4, Vite (HMR / build)
Arquitectura: pipeline de EventSubscribers ordenados por prioridad (resolución del tenant por slug, activación del filtro Doctrine, bloqueo de restaurantes inactivos tras el firewall), subidas de archivos limitadas por tenant, carrito en sesión aislado por slug
i18n: FR / EN / ES, traducciones de carta asistidas por IA, lectura del pedido en el idioma del restaurante
PDF: generación en el servidor del resumen del pedido