Skip to content

marcelobarbosaO/pokedex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pokedex logo

Aplicativo para listagem de pokémons

💻 Projeto

Aplicativo para listagem, filtro e busca de pokemons utilizando React Native. Todo o consumo de api foi possível utilizando a PokéApi.

Preview

ios.mp4

Funcionalidades

  • Autenticação de Usuário: Logar usuário usando api back end para teste ReqRes

  • Listagem dos pokémons: Listar os pokémons com o uso da API REST.

  • Scroll infito: Aumentar a listagem de pokemons ao rolar a tela até o fim.

  • Buscar pokémons: Método para filtrar os pokémons a partir do seu nome.

  • Detalhe do pokémon: Página com detalhes do pokemon.

Conceitos abordados

  • Utilizado uma api de back end de teste para autenticar usuário e manter logado via redux-persist com sagas e redux-toolkit

  • FlexBox com Styled-Components para montagem do layout.

  • Utilização do react-native-size-matters para normalização de fontes e tamanho de Views.

  • Consumo de api com o uso da lib axios.

  • Conceitos de tipagem no typescript.

  • Configuração de fonte local.

  • Tema global utilizando react-native-paper e styled-components.

  • Uso de Redux (redux-saga, redux-toolkit, redux-persist) para controle de autenticação do usuário.

  • Solidarity para controle de dependencias obrigatórias no projeto.

  • Hook Form para controle do formulário de login e validação usando yup.

  • Husky para melhora e validação dos commits.

  • Jest para testes de integração.

🚀 Tecnologias

📥 Instalação e execução

Faça um clone desse repositório e acesse o diretório.

$ git clone [email protected]:marcelobarbosaO/pokedex.git && cd pokedex
# Instalando as dependências
$ yarn

# Executanto aplicação
$ yarn start

# Instalação dos pods
$ cd ios && pod install && cd ..
  # Na tela de login use essas credencias para login com sucesso.
  email = [email protected]
  password = cityslicka