Code Monkey home page Code Monkey logo

desafio-full-stack-nex-digital's Introduction

Olá, se você recebeu esse teste é porque gostamos do seu perfil, e está a poucos passos de fazer parte do nosso time!

Gostaríamos que você participasse desse desafio para que possamos testar suas habilidades técnicas, então bora lá!

Teste Full-Stack Nex Digital

Este teste busca analisar as capacidades técnicas para a vaga de Desenvolvedor Full-Stack.

Desafio

Você deverá desenvolver uma aplicação que consiste em: um banco de dados (PostgreSQL), uma API (Node.js + Sequelize.js) e o Front-end (React.js).

Na aplicação, um usuário deverá se cadastrar utilizando nome, e-mail e senha e se autenticar na aplicação utilizando JWT. Já na home, o backend deve retornar para o usuário uma lista de produtos que apenas um usuário autenticado pode acessar.

Pré-Requisitos

  • Front-End - React.js
  • API - Node.js + sequelize.js
  • Banco de dados - PostgreSQL

O que será avaliado

  • Organização geral do código
  • Padronização de nomes de variáveis/funções
  • Performance e segurança do código
  • Utilização correta de git

Diferencial

  • Manter o código limpo e em inglês
  • Utilizar princípios SOLID
  • Agilidade
  • Código maciço com bons tratamentos de erros e bugs

💡 Informações de como executar o projeto

- Você pode clonar o repositório inteiro, onde já estão os dois projetos, backend e frontend.

Executar o Backend

  # Acessar no terminal a pasta onde se encontra o projeto backend

  # rodar o comando npm install

  # Criar o arquivo .env com base no arquivo .env.example incluindo a linha de conexão, ou apenas resmover o example do .env

  # Caso queira testar com um bando de dados local, execute o comando npx sequelize-cli db:migrate. (Não é necessário pois o banco está hospedado).

  ## rodar o comando npm run dev 

Endpoints da API

Endpoint de teste: /auth/user retorna todos os usuário Endpoint de teste: /auth/user/searchByEmail/:email retorna um usuário pelo email encontrado Endpoint de teste: /auth/user/searchById/:id/ retorna um usuário pelo id encontrado Endpoint: /auth/user/login/ retorna o usuário que fez o login + o token de autorização { "name": "Username", "email": "[email protected]", "authorization": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwiaWF0IjoxNjU1MzU0NzMzLCJleHAiOjE2NTUzNTUzMzN9.H2vEQ6ljvYkGIY6tdfKKEhfwCa1ug_VzcUf9m8WphCk" }

Endpoint: /auth/user/logout/ retorna status 201 e desloga usuário

Endpoint de teste: /products/searchAllProducts retorna todos os produtos cadastrados Endpoint: /products/registerProduct retorna status 201 para o produto cadastrado { "name": "Nome do produto", "description": "Sobre o produto", "imageURL": "Url da imagem" }

Executar o Frontend

  
  # Acessar no terminal a pasta onde se encontra o projeto Frontend

  # rodar o comando npm install

  ## rodar o comando npm start

desafio-full-stack-nex-digital's People

Contributors

ilgnersilva avatar

Watchers

 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.