O intuito deste desafio é avaliar seus conhecimentos técnicos em React.
O teste consiste em utilizar a API pokeapi v2 para construção de uma Pokédex.
Este desafio deve ser feito por você em sua casa. O tempo máximo para entrega é de 3 dias.
- Primeiro, faça um fork deste projeto para a sua conta no Github (crie uma se você não possuir).
- Em seguida, implemente o projeto em seu clone local, como descrito abaixo.
- Ao finalizar o desafio, submeta um pull request e nos informe no e-mail que foi finalizado.
- O código precisa rodar em container Docker e não é necessário configurar em docker-compose, mas se estiver será um diverencial.
- Para executar o seu código, deve ser preciso apenas rodar os seguintes comandos:
- git clone $seu-fork
- cd $seu-fork
- comando para executar o docker
- Crie uma documentação explicando como rodar sua aplicação, teste e outras informações que você acha relevante.
Com a API pokeapi v2, precisamos que você crie uma interface WEB para exibir as informações dos pokémons capturados.
Sua aplicação DEVE:
- Ter um filtro para buscar os pokémons por nome ou número
- Adicionar ou capturar, como preferir, novos pokémons na Pokédex, que a princípio estará vazia
- Listar os pokémons que foram adicionados na Pokédex
- Mostrar detalhes do personagem adicionados na Pokédex, como:
- Nome
- Imagem do Pokémon
- Opção do usuário fazer upload de sua própria imagem, substituindo a que é entregue via API
- Peso
- Tamanho
- Lista de tipos
- Lista de habilidades
- Estatísticas de velocidade
- Defesa
- Ataque
- Hp
- Cada passo de sua evolução
- Ao clicar em um item da lista de tipos, mostrar todos os pokémons daquele mesmo tipo, inclusive os que ainda não estão adicionados na Pokédex
- Ao clicar em um item da lista de habilidades mostrar o
short_effect
da mesma
- Excluir os pokémons que foram adicionados na Pokédex
Dica: Você encontrará as imagens dos pokémons nos blocos sprites e versions da API.
Sua aplicação web NÃO PRECISA:
- Lidar com autenticação ou autorização (pontos extras se ela fizer)
- Não precisa estar hospedada em nenhum servidor
- Lidar com APIs que não seja a recomendada pelo teste
- Ser escrita usando algum framework específico (mas não há nada de errado em usá-los também, use o que achar melhor).
- React
- Redux
- React Testing Library
Não necessário, mas se tiver será um diferencial
- Redux-saga
Seu projeto será avaliado de acordo com os seguintes critérios:
- Sua aplicação preenche os requerimentos básicos?
- Você documentou a maneira de configurar o ambiente e rodar sua aplicação?
- Você seguiu as instruções de envio do desafio?
- Qualidade e cobertura dos testes unitários.
- Ter uma aparência bonita