Um amarelo só
O amarelo marca a ação principal, o total e a seleção. Dois botões amarelos juntos indicam hierarquia errada.
Projeto · outubro de 2026
Tudo do projeto num lugar só: regras, fluxo do pedido, as telas do sistema da rede, o app do cliente e o Design System.
Um sistema próprio para a rede de lojas de bebidas do Bastião, em duas partes ligadas ao mesmo banco: o sistema interno da equipe (PDV, pedidos, estoque, caixa e gestão) e o app em que o cliente faz o pedido.
O pedido feito no app aparece na hora no quadro da loja e sai impresso sozinho, como no sistema que as lojas usam hoje.
Como imprimir automaticamente
O cupom traz número do pedido, horário, cliente, telefone, endereço com referência, itens, total, forma de pagamento e troco. É um cupom de controle: a nota fiscal (NFC-e) é outra integração, a decidir.
Desktop, tema escuro oficial, 1440 × 900. Toque numa tela para ver em tamanho real.
Celular, tema claro quente, 390 × 844. O fluxo segue o Zé Delivery: idade, endereço, vitrine, sacola, pagamento e acompanhamento.
Cada item trava uma parte da construção. A sugestão é só um ponto de partida.
| Decisão | Trava | Sugestão |
|---|---|---|
| Modelo da impressora e sistema atual das lojas | Impressão automática | Levantar marca e modelo (Epson, Elgin, Bematech) e como imprimem hoje |
| Nota fiscal (NFC-e) | Balcão e entrega | Integrar depois do MVP com um emissor (ex.: Focus NFe) |
| Taxa de entrega | Pedidos e app | Valor fixo por bairro |
| Estoque negativo | Estoque e PDV | Bloquear venda sem estoque |
| Momento da baixa no delivery | Estoque e pedidos | Reserva ao confirmar, baixa ao sair para entrega |
| Pagamento misto | PDV e caixa | Permitir duas formas na mesma venda |
| Sobra e falta no fechamento | Caixa | Diferença exige justificativa escrita |
| Cascos retornáveis | PDV, estoque e app | Casco como item separado, com saldo por cliente |
| Backend, banco e login | Tudo depois das telas | Supabase com tempo real e permissões por loja |
| Pagamento online no app | App do cliente | PIX e cartão via Mercado Pago ou Asaas |
A operação deve ser rápida para o atendente, rastreável para o gerente e clara para o administrador. Estas quatro regras resolvem a maior parte das dúvidas de tela.
O amarelo marca a ação principal, o total e a seleção. Dois botões amarelos juntos indicam hierarquia errada.
Preços e totais em Archivo, com algarismos alinhados. Dinheiro é guardado em centavos e formatado na tela.
Cinza-chumbo em degraus, nunca preto puro em tudo. Feito para turnos inteiros na frente da tela.
Toda cor de status vem com texto. "Estoque baixo" é sempre "Estoque baixo", em todas as telas.
Toque numa cor para copiar o valor. As cores acompanham o tema da sua tela: no escuro você vê os valores oficiais, no claro os provisórios.
Hierarquia do amarelo
Fundo amarelo sólido, texto quase preto. Uma vez por região.
Borda amarela e fundo suave. Opções, categorias, item ativo.
Texto amarelo para o total e a meta. Só no tema escuro.
Cards, ícones e bordas amarelas em toda parte gastam a cor.
Superfícies
Marca, texto e estados
Gráficos, nesta ordem
Archivo fala alto nos títulos e nos números. Inter carrega a interface. JetBrains Mono fica com o que precisa ser lido caractere por caractere.
Títulos de página, métricas e totais do PDV. 600 a 800.
Corpo, botões, tabelas e campos. Nunca abaixo de 13px no desktop.
Número de pedido, senha do balcão e código de barras.
Escala
Como escrever números
Espaço agrupa antes da borda. Botões e campos têm 44px, que também é a área mínima de toque. Card só existe quando é um objeto que se seleciona.
Espaçamento
Raios
Os mesmos sete componentes do Design System, com os estados que aparecem no dia a dia da loja. Os botões e seletores aqui respondem ao clique.
Bastiao.ButtonPrimário uma vez por região. Contorno amarelo para a alternativa importante. O texto nomeia a ação: nunca "OK" ou "Enviar".
Bastiao.SegmentedControlAté cinco opções exclusivas. Acima disso, use um seletor.
Bastiao.InputLabel sempre visível. Moeda com prefixo separado. Erro escrito embaixo do campo.


Bastiao.ProductTileO botão amarelo de adicionar é a assinatura do PDV. Sem foto boa, o mascote entra como placeholder.
Bastiao.OrderCardNúmero, tempo, cliente, bairro, total e a próxima ação. O tempo decorrido é o sinal de urgência.
Bastiao.MetricCardSempre com a base da comparação. A cor segue o significado: menos cancelamentos é verde.
Estes são os únicos status do sistema. Um status novo só entra depois de registrado nas regras de negócio.
| Status | Quando |
|---|---|
| Novo pedido | Entrou pelo app ou pelo PDV |
| Saiu para entrega | Entregador informado |
| Entregue | Pagamento confirmado |
| Cancelado | Reserva de estoque liberada |
| Status | Regra |
|---|---|
| Disponível | Acima do mínimo |
| Estoque baixo | No mínimo ou abaixo |
| Crítico | No limite crítico |
| Sem estoque | Quantidade zero |
| Inativo | Desligado na loja |
Direta, calma e específica. O botão diz o que acontece. O erro diz o que houve, o que foi guardado e o que fazer.
Finalizar venda
Processar
Não foi possível finalizar a venda. O carrinho foi preservado. Verifique a conexão e tente de novo.
Erro 500. Algo deu errado.
Nenhum lançamento neste caixa. As vendas aparecem aqui depois da abertura.
Nada por aqui ainda!
O mascote assina o login, o ícone do app e os estados vazios. Fica fora de tabelas, cards de métrica e modais comuns.




