O Self-Checkout McDonald's é uma aplicação desenvolvida durante a FullStackWeek, permitindo que clientes realizem pedidos de forma autônoma e eficiente. Inspirado nos terminais de autoatendimento, o projeto visa melhorar a experiência do usuário em restaurantes, reduzindo filas e otimizando o processo de compra.
- Next.js 15: Framework React para renderização no servidor e client-side.
- Tailwind CSS: Framework de estilização rápida e responsiva.
- Prisma ORM: Gerenciamento do banco de dados com facilidade.
- Radix UI: Componentes acessíveis e estilizáveis.
- React Hook Form: Gerenciamento de formulários otimizado.
- Zod: Validação de formulários com TypeScript.
- Lucide React: Ícones modernos e customizáveis.
- React Context API: Gerenciamento de estado global.
- Sonner: Sistema de notificações otimizado.
- Escolha de Produtos: Interface intuitiva para seleção de itens do cardápio.
- Carrinho de Compras: Adição e remoção de produtos.
- Gestão de Pedidos: Acompanhamento do status do pedido em tempo real.
-
Clone o repositório:
git clone https://github.com/seu-usuario/selfcheckout-mcdonalds.git cd selfcheckout-mcdonalds
-
Instale as dependências:
npm install
-
Configure as variáveis de ambiente no arquivo
.env.local
:DATABASE_URL=<sua-url-do-banco> NEXTAUTH_URL=http://localhost:3000 NEXTAUTH_SECRET=<seu-segredo>
-
Inicie o servidor de desenvolvimento:
npm run dev
-
Acesse no navegador:
http://localhost:3000
src/
├── app/ # Estrutura principal da aplicação
│ ├── [slug]/ # Rotas dinâmicas para menus
│ │ ├── [productId]/ # Página de detalhes do produto
│ │ └── actions/ # Ações relacionadas aos pedidos
├── components/ # Componentes reutilizáveis
├── contexts/ # Context API para gerenciamento de estado
├── helpers/ # Funções auxiliares
├── orders/ # Gerenciamento de pedidos
├── prisma/ # Configuração do ORM Prisma
└── public/ # Arquivos estáticos (imagens, logos, etc.)
- Melhorar a acessibilidade (a11y) com atributos ARIA.
- Implementar suporte para cupons de desconto.
- Criar dashboard para administração de pedidos.
- Integração com sistemas de estoque.
- Suporte para diferentes idiomas.
Caso não queira clonar o repositório, você pode acessar a aplicação diretamente por este link: Self-Checkout McDonald's
Se deseja contribuir, sinta-se à vontade para abrir um PR ou reportar issues.
Para mais informações sobre o projeto ou parcerias: 📌 LinkedIn: Tone Lopes 📧 Email: tonelopes.dev@gmail.com
Este projeto está sob a licença MIT.