PROVA DE CONCEITO · DOCUMENTO TÉCNICO

Como esta prova de conceito funciona.

Esta é uma versão funcional reduzida da plataforma. Parte do processo já roda de verdade; parte é simulada de propósito. Aqui está exatamente onde essa fronteira passa — sem maquiagem.

A fronteira: real vs. simulado

O ponto da prova de conceito é demonstrar a capacidade técnica central — ler um cardápio qualquer e confrontá-lo com o mercado — sem investir ainda na parte mais cara e frágil (a coleta de concorrentes).

● Real — roda ao vivo

Leitura do seu cardápio

  • Extração estruturada do cardápio enviado (foto, PDF ou texto) por um modelo de visão.
  • Reconhecimento semântico: "Bruschetta Pomodoro", "Bruschetta de Tomate" e "Bruschetta Clássica" viram o mesmo item comparável.
  • Cálculo da posição de cada prato contra a distribuição de preço da região (mediana, quartis, variação).
  • Estimativa de custo de insumos por prato sob demanda: o modelo sugere um ponto de partida em R$ (com faixa) para destravar a margem sem você calcular do zero. É estimativa de mercado, não o custo do seu fornecedor — vem marcada como estimativa, com faixa visível, e você ajusta com o seu número real.
● Pré-carregado nesta PoC

O mercado da região

  • coleta real Delivery — preço de verdade. A base traz 1.883 estabelecimentos de SP, a quase totalidade com preço real coletado de apps de entrega (base de junho/2026). É coleta verdadeira; só não roda ao vivo a cada análise.
  • referência calibrada Salão — régua de faixa, ainda não coleta. Para mesa/à la carte, a coleta ainda não cobre o mercado. No lugar usamos uma referência calibrada sobre as faixas públicas de preço de salão de SP — uma régua de mercado, não o preço cravado de uma casa. Vem marcada como referência, nunca apresentada como coleta.
  • coleta real Âncoras premium — reais, e por isso o calibrado é conservador. No topo, ancoramos com preço real de cardápio público de steakhouses de referência de SP (PDF datado de 2026). Elas marcam o teto de mercado e mostram que a régua de salão fica abaixo do topo real — calibrada para baixo, não inflada.
  • A comparação é por canal: você diz se o seu cardápio é de salão ou delivery e confrontamos contra o mesmo canal. Onde a referência de salão se aplica, salão contra salão. Onde ainda não há, um cardápio de salão cai para delivery como proxy explícito — marcado, nunca disfarçado, e nunca estimamos um preço de salão a partir do delivery.
  • Em produção, essa camada é alimentada por coleta contínua de cardápios — substituindo a régua calibrada por coleta real de salão em todas as categorias — o ponto caro e sujeito a bloqueio que fica fora do escopo da demonstração.

O pipeline, passo a passo

O que acontece entre enviar o cardápio e ver o comparativo.

01

Entrada

Você cola o texto ou envia a foto do cardápio em /app.

real
02

Extração

O modelo de visão lê a imagem/texto e devolve item, descrição e preço estruturados.

real
03

Normalização

Cada item é casado semanticamente com o catálogo de itens comparáveis da região. Quando o cardápio declara peso ou volume, o preço também é lido por unidade — R$/100g para pratos, R$/100ml para bebidas — para comparar porções diferentes na mesma régua.

real
04

Mercado

Os preços vêm de uma base pré-carregada (1.883 casas de SP — delivery com preço real coletado, mais uma régua de salão calibrada sobre faixas públicas, ancorada por casas premium reais), filtrada pelo canal que você escolheu (em produção: coleta contínua de salão e delivery).

simulado
05

Comparativo

Mediana, quartis e variação por item, com leitura por linha. Os preços também são lidos como conjunto ordenado — uma escada de preços que aponta vãos grandes demais entre faixas e degraus que cobram mais sem entregar mais (R$/100g ou R$/100ml), além do item-âncora que ancora a percepção do resto. Em bebida, o cardápio raramente repete o volume; quando ele não está escrito, o R$/100ml usa o volume de referência da categoria — marcado como estimado (régua de comparação, não o volume cravado da casa). Renderizado no relatório.

real
06

Estimativa de custo

Sob demanda, o modelo estima o custo de insumos por prato (em R$, com faixa) para você não preencher a margem do zero — por prato no modal ou em lote pela grade. É estimativa de mercado, não o custo do seu fornecedor: vem marcada como estimativa e você ajusta com o seu número. Há também um atalho offline por % do preço, para quando a IA não está disponível.

real
07

Descrição que vende

Sob demanda, o modelo escreve frases de cardápio a partir só do nome, da porção e da descrição existente — sem inventar ingrediente. A chamada é ao vivo: por prato na tabela, ou para os heróis da matriz (estrelas e oportunidades) de uma vez, com as duas variações por prato.

real

O servidor mínimo

Um único serviço Node + Express, com Postgres para persistência de sessão e login social Google (Logto), ambos já em produção. Serve as páginas estáticas e expõe um endpoint de análise. Roda em container Docker na infraestrutura did.lu, atrás de HTTPS automático, em gastro.did.lu.

Node 20 + ExpressServidor único, sem framework de front.
Modelo de visãoExtração e normalização do cardápio (Anthropic).
Base de mercadoJSON pré-carregado — placeholder da coleta.
Postgres + login GooglePersistência de sessão e auth social via Logto.
Docker + did.luDeploy declarativo, HTTPS e subdomínio automáticos.

Endpoint central: POST /api/analyze recebe { text } ou { image }, chama o modelo, cruza com a base e devolve o comparativo. GET /api/market expõe a distribuição da região; GET /api/health é o healthcheck.

O que a versão de produção acrescenta

Nada do que está acima muda. O que entra é o que ficou de fora por escolha:

Coleta real e contínua de cardápios de concorrentes — inclusive de salão para todas as categorias — substituindo a base simulada · histórico de relatórios por conta · cota e cobrança · e, com massa de dados suficiente, o mapa público de preços por região.

Analisar um cardápio Voltar ao início