Saltar al contenido

Platto

Un menú donde cada plato se ve en 3D y en realidad aumentada, sin instalar nada.

Rol
Founder · todo el producto
Período
Jul 2026 — hoy
Equipo
Solo, con IA como copiloto
Estado
En desarrollo

Stack: Next.js · TypeScript · Prisma · PostgreSQL · <model-viewer> · WebXR · Vercel · Playwright · Python

platto.tech ↗Demo en vivo ↗

El cliente escanea el QR de la mesa, abre la carta en el navegador y puede girar cada plato en 3D o verlo servido sobre su mesa con la cámara. Lo difícil no fue el menú: fue conseguir un 3D que se parezca al plato de verdad.

El problema

En la mayoría de los restaurantes elegís mirando un nombre y un precio, o una foto genérica. Platto muestra el plato: lo girás con el dedo y, con un toque, aparece sobre tu mesa a tamaño real.

Arrastrá para girar
La margherita de la demo, tal cual la ve un cliente. Girala con el dedo o el mouse.
Captura del menú de Platto en un celular con pizzas, pastas y postres; los platos con modelo 3D llevan la etiqueta 3D
La demo en vivo en platto.tech: los platos con la etiqueta 3D se pueden girar y ver en la mesa.

Cómo funciona

  • El local carga su carta desde su panel: categorías, precios, horarios, sucursales, alérgenos e idiomas.
  • Cada mesa tiene su QR y la carta abre en el navegador, sin app.
  • El 3D y la realidad aumentada usan lo que ya trae cada celular, Android o iPhone. Si el celular no puede mostrar el plato sobre la mesa, el botón directamente no aparece.

La parte difícil: conseguir el 3D

Esto es lo que más tiempo me llevó, y tuvo varias vueltas.

1. Una sola foto no alcanza

La primera versión armaba el modelo 3D a partir de una sola foto. Generaba domos: una pizza terminaba pareciendo una torta. Para un menú donde la gente pide según lo que ve, eso no sirve.

2. La reconstrucción que nunca anduvo

Pasé a reconstruir el plato a partir de varias fotos reales con un servicio externo. En producción rechazaba todas las subidas con un error genérico y, como el código no guardaba la respuesta, no sabía por qué. Cuando leí la documentación de verdad aparecieron tres errores míos de integración. Después anduvo, pero cada formato extra, como el que necesita el iPhone, costaba un escaneo más por plato.

3. Hacerlo propio

Armé mi propio sistema de reconstrucción. Funcionaba, pero cada plato tardaba entre 15 y 20 minutos y necesitaba mucha más memoria de la que permite el hosting, así que lo tuve que correr en otra computadora que procesa los pedidos y devuelve el modelo terminado.

4. La letra chica

Varias herramientas que evalué no se pueden usar en un producto comercial por su licencia. Lo descubrí leyendo la letra chica antes de construir encima, no después.

5. ¿Cuántas fotos hacen falta?

Pedirle decenas de fotos a un dueño de restaurante es mucho, así que corrí un experimento para ver cuántas hacen falta de verdad. Dio bastantes menos, pero lo hice con un plato simulado y no con uno real, así que no cambié el producto: queda como hipótesis hasta repetirlo con datos reales.

6. Generar en vez de reconstruir

También probé modelos que generan el 3D con IA a partir de pocas fotos, con un chequeo en el celular que avisa si una foto salió borrosa u oscura antes de subirla. Ninguno me convenció para producción: o el resultado no se parecía al plato, o no se podía mostrar en el visor, o era demasiado caro de correr.

Hoy los modelos los cargo yo desde el panel de admin mientras valido el producto. La automatización está construida y apagada: prefiero eso a mostrarle a un restaurante un plato que no se parece al suyo.

El resto del producto

  • Panel del local: carta, precios masivos, QR por mesa, varias sucursales, plato del día, combos, reseñas y un reporte mensual con lo más mirado.
  • Seguridad: cada local ve solo sus propios datos, y el login no revela qué emails están registrados.
  • Accesibilidad AA, lectura en voz alta y alto contraste en el menú público.
  • Rendimiento: medí y arreglé una animación de la portada que trababa el scroll.
  • Una demo que se levanta con un comando y se abre desde el celular con un QR, para mostrar Platto en persona.
Ficha de una pizza margherita en Platto con el modelo 3D, el precio y la opción de verla en la mesa
La ficha de un plato: el modelo 3D arriba, y abajo qué pedir para acompañarlo.

Del proyecto · Notas

Siguiente casoQuicky→Salas temporales para pasar texto, código y archivos entre dispositivos, sin cuenta.