Skip to content

Este projeto é uma loja de quadrinhos da marvel online com diversas funcionalidades.

Notifications You must be signed in to change notification settings

kkauadev/marvel-hq-shop

Repository files navigation

Marvel Hq Store

Este é um projeto desenvolvido como parte de um desafio de código para criar um front-end para uma loja de quadrinhos virtual. O objetivo é criar um website moderno e atraente, que permita aos usuários visualizar e comprar HQs da Marvel Comics.

Veja funcionando agora

Tecnologias utilizadas

  • React
  • Styled Components
  • Cypress

Como executar a aplicação

Para executar a aplicação localmente, siga os seguintes passos:

  • Clone este repositório em sua máquina local:

    git clone https://github.com/Kato2004/marvel-hq-shop.git
  • Navegue até o diretório do projeto:

    cd marvel-hq-shop
  • Instale as dependências:

    npm install
  • Inicie a aplicação:

    npm start

Testes E2E

Os testes E2E foram realizados com o Cypress e abrangem os fluxos de adição de itens ao carrinho, aplicação de cupons de desconto e verificação do preço final da compra.

Para executar os testes E2E, siga os seguintes passos:

  • Inicie a aplicação:

    npm start
  • Em outro terminal, execute os testes E2E:

    npm run test

Features implementadas

Listagem paginada das HQs

A página inicial apresenta uma lista de HQs da Marvel Comics, paginada de 20 em 20 itens. Para tornar a experiência do usuário mais interessante, 10% dos quadrinhos são marcados aleatoriamente como raros ao carregar a página. Clicando em um item da lista, o usuário é redirecionado para a página de visualização individual da HQ.

Visualização individual da HQ

A página de visualização individual da HQ apresenta informações detalhadas sobre a história em quadrinhos selecionada, incluindo a capa, o título, o preço e a descrição da HQ. A página também apresenta a possibilidade de adicionar a HQ ao carrinho de compras.

Carrinho de compras

O carrinho de compras é acessível a partir de um ícone de carrinho no canto superior direito da página. O carrinho apresenta uma lista de itens adicionados pelo usuário, com o preço total da compra e a possibilidade de inserir um cupom de desconto. Os cupons podem ser comuns ou raros, e são aplicados somente às HQs respectivamente comuns e raras.

Cupons

Comuns

  • TCqp98
  • TCPw12
  • TC2fA2
  • TCaqb9
  • TC2113

Raro

  • WQP0q2
  • WQ2ca4
  • WQ83Q1
  • WQd2o2
  • WQ1OK5

O que eu aprendi

Neste projeto bastante desafiador aprendi muito e me aprofundei em assuntos que eu não dava muito atenção, no caso testes e performace, o primeiro eu já estudei e fiz testes unitários mas nunca end-2-end e gostei muito e irei me aprofundar no Cypress e entender o que deve, pode e é obrigatório ser testado para ter certeza que todas as funcionalidades do sistema estão funcionando. Já no caso da performace não tinha tanto conhecimentos no o que a falta dela pode ocasionar, por exemplos o uso de muitos estados e a manipulação deles a todo o momento que acaba com a experiência do usuário com lentidão e até mesmo a impossibilidade do uso da aplicação.

Já sobre os desafios que superei acredito que o principal foi a manipulação de estados grandes que são utilizados e dão vida a grande parte da aplicação como o estado do carrinho que contém os valores de todos os items que estão no carrinho que acaba sofrendo muitas alterações como exclusão de itens e modificações de valores que recebem desconto, para concluir foi um dos melhores desafios que eu já fiz e coloquei todo meu esforço para que ficasse bom, por isso, espero que goste.

About

Este projeto é uma loja de quadrinhos da marvel online com diversas funcionalidades.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published