Skip to content

About

Plataforma Completa de Pizzaria Full-Stack (Next.js 15, React 19, TypeScript, Supabase, Tailwind CSS, Vitest)

Resources

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

Plataforma de Pizzaria Full-Stack — Produção

Sistema de e-commerce gastronômico profissional de alta performance para pizzarias artesanais, composto por Área Pública (cardápio interativo, construtor de pizza meio a meio, carrinho e checkout) e Painel Administrativo em tempo real (Kanban de cozinha, alertas sonoros, controle de produtos e horários da loja).


Stack Tecnológica Oficial

  • Frontend: Next.js (App Router), React 19, TypeScript (Strict Mode), Tailwind CSS, Lucide Icons
  • Backend: Next.js Route Handlers / Server Actions, Supabase (@supabase/ssr, @supabase/supabase-js)
  • Banco de Dados: PostgreSQL com Row Level Security (RLS) granular
  • Realtime: Supabase Realtime (INSERT + UPDATE)
  • Armazenamento: Supabase Storage (Upload com conversão client-side Canvas para WebP)
  • Autenticação e RBAC: Supabase Auth com tabela user_roles (admin vs staff)
  • Estado Local: Zustand com persistência controlada
  • Testes: Vitest (Unitários e Integração)
  • Runtime e Pacotes: Bun / Node.js 24

Princípios de Engenharia

  1. O Backend é a Única Fonte da Verdade: O cliente envia apenas intenção. O servidor recalcula todos os preços, adicionais, bordas e taxas a partir do banco de dados.
  2. Moeda em Centavos Inteiros: Todos os cálculos monetários utilizam cents inteiros (ex: R$ 25,90 = 2590), eliminando discrepâncias de arredondamento por ponto flutuante.
  3. Mocks Restritos a Testes: Implementações em memória existem exclusivamente para os testes automatizados com Vitest, emulando fielmente as regras do Supabase.
  4. Segurança por Padrão: Autenticação não concede automaticamente privilégios administrativos. Operações sensíveis são protegidas por funções SECURITY DEFINER e RLS.

Instalação e Execução

1. Instalar Dependências

bun install

(ou npm install)

2. Configurar Variáveis de Ambiente

Copie o arquivo de exemplo:

cp .env.example .env.local

Preencha suas credenciais do Supabase:

NEXT_PUBLIC_SUPABASE_URL=https://sua-url.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=sua-chave-anon
SUPABASE_SERVICE_ROLE_KEY=sua-chave-service-role

3. Executar Testes Automatizados

npm test

4. Checagens de Tipos e Linter

npm run typecheck
npm run lint

5. Compilar para Produção

npm run build

6. Executar Servidor Local

npm run dev

Acesse http://localhost:3000 para a loja pública e http://localhost:3000/admin para o painel operacional.


Documentação Viva do Projeto

Toda a documentação técnica e viva é mantida na pasta docs/:


☕ Apoie este Projeto

Se este projeto ou código foi útil para você, considere apoiar o meu trabalho com uma doação espontânea de qualquer valor. Sua contribuição ajuda a manter o desenvolvimento de novas ferramentas e soluções open-source!

💠 Clique aqui para exibir os dados do PIX (Doação Voluntária)
  • Chave PIX (ALEATORIA): 91afe4f0-a466-4423-9d9c-d6a0ffea9b3e
  • Banco: C6 Bank
  • Titular: Wallace de Paulo Soares

Nota Legal: Contribuição 100% voluntária e espontânea de apoio ao desenvolvedor (Art. 538 do Código Civil).

About

Plataforma Completa de Pizzaria Full-Stack (Next.js 15, React 19, TypeScript, Supabase, Tailwind CSS, Vitest)

Resources

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages