Skip to content

Pedro-Afonso/cart

Repository files navigation

GitHub GitHub repo size GitHub Repo stars

Projeto Cart


📌 Índice de conteúdos



📸 Screenshots do Projeto

✨ Tela de listagem dos produtos com um design responsivo ✨


cart-desktop



✨ Tela de listagem dos produtos com um design responsivo ✨



🧐 Sobre o Projeto

Este projeto tem o objetivo de listar os produtos da API, para que o usuário possa adicionar, incrementar ou retirar os produtos no carrinho.

Motivação: Aplicar testes de integração usando o jest/testing library em uma aplicação que envolva a lógica do redux-toolkit e Nextjs (sem SSR)

Descrição: O site lista os produtos da api criada no Nextjs, o usuário pode adicionar os produtos em um carrinho, alterar a quantidade ou remover do carrinho. O RTK (redux toolkit) foi usado para gerenciar o estado do carrinho, e o estado do menu lateral que foi criado com o React.createPortal. O RTK Query foi usado para controlar o cache da requisição.

Foi realizados testes de integração (sem “mockar” a lógica do redux) usando o jest/testing library e o Mock Server Working (msw) para interceptar as requisições, como recomenda a documentação do redux.

O desing foi retirado do processo de seleção da MKS system



🌐 Tecnologias Usadas

Next.js - Framework JS.

Typescript - Para fazer a tipagem.

Redux Toolkit - Conjunto de ferramentas para simplificar o desenvolvimento Redux

Styled Components - Biblioteca que nos permite escrever códigos CSS dentro do JavaScript

Jest - Framework de Testes em JavaScript

Testing Library - Família de pacotes que ajudam a testar componentes de UI do ponto de vista do usuário.



🚩 Features

  • Listar os produtos
  • Adicionar ou remover item do carrinho.
  • Incrementar ou reduzir a quantidade itens do carrinho.
  • Layout responsivo.


❓ Como instalar e executar o projeto


Acessando direto pelo site:

  • Você pode clicar nesse link e acessar a aplicação que está hospedada na plataforma da Vercel.

Executar na máquina local:

(certifique-se de ter instalado na sua máquina o Node.

  1. Abra o terminal na pasta desejada para clonar o repositório e execute o comando:
git clone https://github.com/pedro-afonso/cart.git
  1. Depois de concluído, execute os seguintes comandos para iniciar:
cd cart

Para instalar as dependências:

npm install

Com isso já é possível iniciar a aplicação

npm run dev
  1. Por fim, abra a pasta clonada em seu editor de códigos favorito e faça as suas alterações! xD


📕 Autor

Feito por Pedro Afonso.