Cardápio digital para mesa e balcão




Cardápio digital para tablets fixos em mesas e balcão de restaurantes, bares e cafés. O dispositivo roda em modo kiosk — travado via Device Owner do Android, sem acesso ao sistema — então o cliente só enxerga o cardápio, do início ao pedido.
Decisões técnicas
Offline-first com SQLite
Todo o catálogo e os pedidos em andamento ficam num banco SQLite local (expo-sqlite), com migrações versionadas rodando no boot. A sincronização usa um cursor incremental — o app só busca os produtos alterados desde a última atualização, em vez de baixar o catálogo inteiro a cada sync.
Modo kiosk real
O tablet é registrado como Device Owner (via ADB) e travado só no app, usando react-native-lock-task — o usuário não consegue sair do cardápio nem acessar o Android por trás. O bloqueio só entra em build de produção, pra não travar o próprio ambiente de desenvolvimento.
Imagens fora do banco
Fotos de produtos ficam salvas no filesystem do dispositivo, não como blob no SQLite — evita inchar o banco e deixa a leitura de imagem mais rápida.
Reset por inatividade
Depois de um tempo sem uso, o app volta sozinho pra tela inicial — preparado pro próximo cliente sem precisar de intervenção da equipe.
O que o cliente faz
Navega por grupos e produtos
Categorias organizadas, com busca e visualização detalhada de cada item.
Personaliza o pedido
Adiciona complementos e observações antes de confirmar.
Envia direto pra produção
O pedido sai do tablet e cai na fila de preparo, sem passar por um atendente pra digitar de novo.
O desafio central aqui não é a interface — é fazer um dispositivo que ninguém vai supervisionar de perto se comportar de forma previsível o dia inteiro, pedido após pedido.