Coder Social home page Coder Social logo

fullstack-challenge's Introduction

Desafio de Fullstack

Clubpetro

Descrição

Este desafio tem como objetivo avaliar as habilidades técnicas do candidato a vaga de desenvolvedor fullstack no Clubpetro.

O Desafio

O desafio consiste em desenvolver um sistema que permita o CRUD de lugares para se conhecer ao redor do mundo. Como na imagem a seguir:

Desafio

Backend

Desenvolvimento da API para alimentar o frontend.

Os dados a ser considerados são:

  • País: O país escolhido;
  • Local: O local dentro do país escolhido;
  • Meta: O mês e o ano que o usuário pretende visitar o local;
  • Url da bandeira do país;
  • Data de criação do registro;
  • Data de atualização do registro.
Requisitos Obrigatórios

Requisitos que serão avaliados no desafio.

  • A API deverá ser desenvolvida com Node.js e Express;
  • Apenas o Local e a Meta poderão ser editados;
  • O mesmo local em determinado país não poderá ser adicionado de forma duplicada;
  • A listagem dos dados deverá ser ordenada de forma crescente pela meta;
  • O candidato deverá adicionar ao projeto uma explicação de como executar a aplicação.
Bônus

Requisitos que não são obrigatórios mas podem te deixar em vantagem com relação aos outros candidatos.

Frontend

O Sistema deverá conter um formulário com 3 campos:

  • País: um select contendo a lista de todos os países existentes;
  • Local: um input para que o usuário digite o local que ele deseja conhecer no país selecionado;
  • Meta: um input para que o usuário digite a o mês e o ano que ele pretende visitar o local em questão.

Quando o usuário clicar em "Adicionar", o formulário deverá ser resetado e os dados deverão ser submetidos para a API. Em seguida, a listagem dos cards deverá ser atualizada.

Requisitos Obrigatórios

Requisitos que serão avaliados no frontend.

  • O Sistema deverá ser desenvolvido em typescript utilizando a biblioteca React;
  • O Layout apresentado na imagem acima deverá ser fielmente seguido e pode ser encontrado no Figma;
  • Integração com o Backend;
  • Apenas o Local e Meta poderão ser editados e a edição do card deverá ser feita de acordo com a criatividade do canditado, não tendo um layout específico para esta ação;
  • O Sistema deverá ser desenvolvido utilizando React Hooks;
  • O Sistema deverá ser integrado à API Rest Countries para a listagem dos países. Esta conta com a imagem da bandeira e a tradução do nome do país para Português;
  • A biblioteca react-input-mask deverá ser utilizada para colocar uma mascara no input de "Meta" no formato mm/aaaa;
  • O Sistema deverá ser responsivo;
  • O candidato deverá adicionar ao projeto uma explicação de como executar a aplicação.
Bônus

Requisitos que não são obrigatórios mas podem te deixar em vantagem com relação aos outros candidatos.

Submissão e Prazo de entrega

  • O canditado deverá realizar um fork deste repositório e submeter o código no mesmo;
  • Em caso do deploy realizado, a url deverá ser adicionada no README;
  • O prazo de entrega para este desafio é de 2 (duas) semanas, contando a partir do dia em que o candidato recebeu o email com o link do repositório;
  • Ao finalizar o desafio, o candidato deverá submeter o desafio no questionário disponível na sua área de candidato na plataforma(https://menvievagas.com.br/vagas/fam%C3%8Dliapires/) do Processo Seletivo. É só clicar em RESPONDER no questionário e inserir o link do seu PR. Em caso de dúvidas, enviar um e-mail para [email protected]

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.