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
- 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.
- 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 mensagemrelease: 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.
O Layout da aplicação está disponível no Figma, o projeto está disponível no link, e o protótipo no link.
- 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.
- 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