Giter VIP home page Giter VIP logo

desafio-desenvolvedor-pleno-3's Introduction

SoftMakers

Desafio - Desenvolvedor Fullstack Pleno

Seja bem-vindo! Este desafio foi projetado para avaliar a sua capacidade técnica como candidato à vaga de Desenvolvedor Fullstack Pleno.

Instruções

  • Faça um fork deste repositório;
  • Utilize alguma das tecnologias (front-end e back-end) informadas na proposta desse desafio;
  • Crie um passo a passo de como rodar a sua aplicação;
  • Após finalizar, submeta um pull request com um comentário informando o seu e-mail de contato e aguarde nossa avaliação.

Proposta

Você deverá desenvolver um blog. Para isso, separaremos a proposta desse desafio em duas etapas:

Back-end

Desenvolva uma API utilizando Node.js que deve conter as seguintes rotas:

  • /register - [POST] - esta rota deve cadastrar um usuário;
  • /login - [POST] - esta rota deve autenticar um usuário;
  • /posts - [POST] - esta rota deve cadastrar uma postagem mantendo a referência do autor. (requer autenticação);
  • /posts/{id} - [PUT] - esta rota deve editar a postagem do ID especificado mantendo a referência do autor. (requer autenticação);
  • /posts - [GET] - esta rota deve retornar a lista de todas as postagens ordenadas das mais recentes para as mais antigas com a possibilidade de inverter esta ordenação e de retornar apenas as postagens do usuário que fez a requisição (requer autenticação);
  • /posts/{id} - [GET] - esta rota deve retornar a postagem do ID especificado com todos os seus dados (requer autenticação);
  • /posts/{id} - [DELETE] - esta rota deve deletar a postagem do ID especificado.

Front-end

Web: Desenvolva uma aplicação web utilizando o React.js e esta deve atender as seguintes histórias:

  • Eu como usuário desejo me cadastrar;
  • Eu como usuário desejo realizar login;
  • Eu como usuário autenticado desejo visualizar todas as postagens;
  • Eu como usuário autenticado desejo visualizar os detalhes de uma postagem;
  • Eu como usuário autenticado desejo visualizar todas as minhas postagens;
  • Eu como usuário autenticado desejo criar uma postagem;
  • Eu como usuário autenticado desejo editar uma postagem que eu criei;
  • Eu como usuário autenticado desejo deletar uma postagem que eu criei.

Mobile: Desenvolva um aplicativo utilizando o React Native tendo as mesmas funcionalidades da aplicação web.

Diferenciais

Consideraremos como diferenciais os seguintes pontos:

  • Deploy realizado em qualquer ambiente em nuvem;
  • Criação de testes unitários;
  • Criação de testes de integração.

Observações:

  • Suas aplicaçóes web e mobile DEVEM se comunicar com sua API;
  • Você pode utilizar o banco de dados de sua preferência (relacional ou não relacional).

desafio-desenvolvedor-pleno-3's People

Contributors

deividalan avatar e-farias avatar tarcisiopgs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

desafio-desenvolvedor-pleno-3's Issues

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.