Skip to content

Latest commit

 

History

History
59 lines (44 loc) · 2.25 KB

README.md

File metadata and controls

59 lines (44 loc) · 2.25 KB

Processo

Muito obrigado pelo interesse em fazer parte de nosso time de jedAIS! O objetivo dessa parte do processo é conhecer mais sobre suas habilidades técnicas, assim saberemos em quais desafios você pode melhor se encaixar e quais gaps(se houverem) podem ser trabalhados juntos ao time caso você seja selecionado.

Objetivo do projeto

Implementar um web app que consuma a API Pokemon TCG(https://pokemontcg.io/) utilizando VueJS, ReactJS ou Angular (usar framework indicado pela vaga).

Importante: apesar dessa API possuir um SDK, a ideia é que você faça a integração usando uma camada de serviço com a melhor biblioteca que acredite ser necessária para integração com a API.

A aplicação deve possuir:

Página com visão em grid na versão desktop e carrosel na versão mobile, somente das cartas Pokemon:

  • Imagem da carta
  • Nome do Pokemon
  • ID do Pokemon
  • Tipo(s)
  • Ao interagir redirecionar para a tela de detalhes

Páginas de detalhes da carta de Pokemon:

  • Imagem em alta definição
  • Nome
  • ID do Pokemon
  • Tipo(s)
  • Resistencia(s)
  • Fraqueza(s)
  • Lista de nomes dos ataques do pokemon ao clicar exibir a modal de detalhe

Modal com detalhe do ataque do Pokemon com:

  • Custo de “mana”
  • Nome
  • Dano
  • Descrição

Requisitos

  • A aplicação deverá ser responsiva, mobile-first
  • A aplicação deverá utilizar a funcionalidade de rotas
  • A lista de cartas deverá estar ordenada por nome
  • A aplicação deve conter a funcionalidade de busca por nome
  • Localização/Internacionalização (não necessário traduzir mas com suporte)
  • Build funcional (vamos baixar e executar o código)
  • Conter testes E2E
  • Conter testes unitários
  • Utilizar SASS(variáveis, mixins, etc)
  • Utilizar Store Reativa (Vuex, Redux, etc)

Diferenciais:

  • Aplicação de SOLID, DRY e Clean Code
  • Arquitetura com divisão de responsabilidade
  • Implementação PWA
  • Documentação clara para executar o projeto
  • Código publicado/implantado
  • Não reinvente a roda: use bibliotecas que facilitem o deploy do seu projeto, por exemplo. Por outro lado, desenvolva seus próprios componentes e mostre do que você é capaz, queremos ver sua lógica de programação e sua capacidade de resolver problemas, sem a utilização de bibliotecas prontas