Skip to content

Latest commit

 

History

History
55 lines (39 loc) · 2.33 KB

requisitos.md

File metadata and controls

55 lines (39 loc) · 2.33 KB

Desafio Ecommerce

Primeira Entrega - Objetivo

Montar a estrutura inicial do projeto e criação de um componente visual simples

Requisitos:

  • Criar o projeto utilizando (NextJS, CRA ou ViteJS), utilizar Typescript (Obrigatório);
  • Card com as informações do produto (nome, descrição, imagem e preço);
  • Header com título do site e um campo de busca (ainda sem ação);
  • Menu lateral com lista de categorias (ainda sem ação);
  • Aplicação disponível na WEB (Deploy pela vercel ou netlify);
  • Bônus: Responsividade.

Segunda Entrega - Objetivo

Adicionar estado na aplicação e familiarização com hooks básicos

Requisitos:

  • A lista de produtos deve vir de um arquivo json (mockado) e ficar armazenado no estado da aplicação;
  • O campo de busca do header deve filtrar os produtos com base no nome;
  • Cada produto deve pertencer a uma ou mais categorias;
  • O menu lateral deve filtrar os produtos por categoria;
  • Bônus: Consumir a lista de produtos de um serviço REST. Sugestão: https://mockapi.io.

Terceira Entrega - Objetivo

Introdução a API de Contexto e Roteamento

Requisitos:

  • Deve ser criado um contexto que armazena as informações do carrinho de compras (itens selecionados);
  • No card do produto deve ser adicionado um botão que o adiciona ao carrinho de compras;
  • No header deve ser adicionado um link para a página do carrinho;
  • Ao acessar a rota do carrinho, a lista de produtos selecionados deve ser exibida;
  • Deve ser possível remover um produto do carrinho;
  • Bônus: Adicionar informações sobre estoque dos produtos.

Quarta Entrega - Objetivo

Finalizar Projeto

Requisitos:

  • Na tela do carrinho, apresentar a possibilidade de adicionar mais itens do mesmo produto;
  • Apresentar um valor total da compra;
  • Adicionar um botão de finalizar compra que exibe uma mensagem de sucesso, zera o carrinho e redireciona o usuário de volta para página inicial;
  • Bônus: Adicionar informações sobre saldo do cliente;
  • Bônus: Adicionar opção de selecionar cupom para a compra;
  • Bônus: Persistir o contexto no sessionStorage;
  • Bônus: Criar página de detalhes sobre o produto;
  • Bônus: Adicionar os produtos até uma certa quantidade de acordo com o estoque de cada produto.