GithubHelp home page GithubHelp logo

fmcalado / pratical-test-react-native Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ubelix/pratical-test-react-native

0.0 0.0 0.0 452 KB

TypeScript 33.34% Starlark 3.44% Java 30.98% Makefile 2.70% C++ 12.40% JavaScript 1.03% Shell 0.85% Ruby 2.90% Objective-C 0.69% Objective-C++ 11.66%

pratical-test-react-native's Introduction

UBELIX - Avaliação Prática, React Native

A Avaliação Prática, possui por finalidade análisar as suas competências técnicas com React Native, analisando a estrutura e boas práticas de desenvolvimento

Instruções

  • A aplicação deve ser contruída utilzando React Native, podendo ser utilizado o Expo Bare Workflow ou Managed Workflow.
  • Tempo para a realização da atividade - 04 Horas.
  • Procure utiizar as boas práticas de desenvolvimento e componentização.
  • Não é necessário concluir a atividade por completa, estamos interessados em entender sua visão estrutural e lógica.
  • Procure seguir as interfaces, cores e ícones. Porém não é obrigatório, diferente da estrutura que é obrigatória.

Tenha uma boa sorte! Qualquer dúvida nos comunique.

GitHub

  • Realize um fork do projeto no GitHub.
  • Ao iniciar a valiação, faça um commit vazio com a mensagem release: init app e quando finalizar, faça um commit com a mensagem release: finish app.
  • Faça vários commits com o objetivo de demonstrar a construção da solução
  • Não use branches.
  • Lembre-se, procure não gastar mais do que 4 horas para finalizar o teste.
  • Ao finalizar, suba o projeto em um repositório público e envie o link do repositório por e-mail. É fundamental que ele esteja público.

🔖 Layout

O Layout da aplicação está disponível no Figma, o projeto está disponível no link, e o protótipo no link.


Avaliação Prática

Contexto:


  • A aplicação possui por finalidade, através de três interfaces simples, a listagem livros disponíveis de acordo com o gênero, podendo pesquisar pelo título e autor


INFORMAÇÕES ADICIONAIS: As resposta das requisições estão no formato JSON.

1 - A Interface de Dashboard:. Listagem de todos os gêneros disponíveis obtidos através da API da NyTimes. Informações da API no link.

API:

https://api.nytimes.com

ROTAS:

  • Categorias de Livros

      https://api.nytimes.com/svc/books/v3/lists/names.json
    
  • As coleções de livros 'Para você' e 'Os mais lidos da semana'

      https://api.nytimes.com/svc/books/v3/lists/overview.json
    

PARAMETROS:

  • api-key:

      api-key=vi0bsV0yOCA9qYnmAaOUJV4dO0BNhUGR
    

CURL:

curl -X GET https://api.nytimes.com/svc/books/v3/lists/names.json\?api-key\=vi0bsV0yOCA9qYnmAaOUJV4dO0BNhUGR

INFORMAÇÕES ADICIONAIS:

  • Através da resposta obtida da API, renderizar cada um dos gêneros utilizando o "display_name" como nome do gênero e será necessário a informação do campo "list_name_encoded" para realizar a requisição na próxima interface, lembre-se cada um dos componentes se acionados será redirecionado para a próxima interface, onde será realizado a seleção dos livros de acordo com o gênero.

  • A classificação das estrelas podem ser classificadas fixadas em 5 ou aleatórias.

  • A Pesquisar deve ser realizada através dos campos:

      "author": String,
      "title": String,
    



2 - Agora você deve criar uma interface com a lista de livros retornados de acordo com o gênero selecionado na primeira interface, mostrando a imagem da capa do livro, título, autor, preço e o nome da editora.


A Listagem de todos os livros disponíveis obtidos através da API da NyTime de acordo com o gênero previamente escolido, clique aqui.


INFORMAÇÕES ADICIONAIS:

  • Utilize os campos do retorno da resposta da requisição:

      "publisher": String,
      "author": String,
      "title": String,
      "description": String,
      "price": String,
      "book_image": String,
    
  • Envie as informações do livro selecionado para a próxima página:

API:

https://api.nytimes.com

ROTA:

  • kindOfBooks, no caso é a informação obtida na resposta da primeira requisição, através do campo "list_name_encoded".

      https://api.nytimes.com/svc/books/v3/lists/current/`${kindOfBooks}`.json
    

PARAMETROS:

  • api-key:

      api-key=vi0bsV0yOCA9qYnmAaOUJV4dO0BNhUGR
    

CURL - Exemplo

curl -X GET https://api.nytimes.com/svc/books/v3/lists/current/combined-print-and-e-book-fiction.json\?api-key\=vi0bsV0yOCA9qYnmAaOUJV4dO0BNhUGR

3 - Agora você deve criar uma interface com as informações do livro de acordo com o livro selecionado na segunda interface, mostrando a imagem da capa do livro, título, autor, preço, descrição e o nome da editora.


A Listagem de todos os livros disponíveis obtidos através da API da NyTime de acordo com o gênero previamente escolido, clique aqui.

INFORMAÇÕES ADICIONAIS:

  • As informações obtidas na última requisição:

      "publisher": String,
      "author": String,
      "title": String,
      "description": String,
      "price": String,
      "book_image": String,
    
  • A classificação das estrelas podem ser classificadas fixadas em 5 ou aleatórias.

  • As avaliações podem ser fixadas em 36 avaliações ou aleatórias.


EXTRA

Será considerado um diferencial se você fizer tratamentos de erros, falhas de rede e indicadores de carregamento para melhorar a usabilidade do usuário.



🛠 Time

  • Emerson Lessa         (Stackholder)
  • George Lima             (Stackholder)
  • Wilson Lima              (Stackholder)
  • Taynan Penini           (Ux/Ui Designer)
  • Everton Ferreira       (Arquiteto de Software)                       LinkedIn
  • Vinicius Passos        (Especialista de Desenvolvimento)     LinkedIn . GitHub



Feito com ♥ por Everton Ferreira e Taynan Ferreira

pratical-test-react-native's People

Contributors

fmcalado avatar evertonferreira96 avatar vtpa avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.