Giter Club home page Giter Club logo

backend-challenge-dynamox's Introduction

🚀 Dynamox - BackEnd Challenge

API RESTfull para gerenciamento de produtos e categorias, com controle e autenticação de usuários com JWT.

📌 Sobre o desafio

Nesse desafio, foi utilizado varios princípios, um deles o SOLID para trabalhar a programação orientada a objetos e design de código.

Introdução

Criar um gerenciador de produtos e categorias, com controle e autenticação de usuários.

O Projeto

Desenvolver uma API RESTful utilizando nodejs e banco de dados relacional. Cada produto deve pertencer a uma categoria pré registrada no sistema.

Funcionalidades

● Usuários

○ (store) Cadastrar usuário ○ (login) Login de usuário retornando um bearer token para utilizar nas chamadas abaixo

● Categorias

○ (store) Cadastrar categoria ○ (update) Atualizar categoria ○ (delete) Remover categoria ○ (show) Exibir categoria ○ (index) Listar categorias

● Produtos

○ (store) Cadastrar produto ○ (update) Atualizar produto ○ (delete) Remover produto ○ (show) Exibir produto ○ (index) Listar produtos ■ Filtrar por categorias

Regras de negócio

● A data de fabricação nunca deve ser maior que a data de validade; ● O Preço do produto deverá ser registrado com 2 casas decimais; ● A listagem deve ter a possibilidade de ordenação dos campos e com uma paginação de 10 produtos por página.

📌 Algumas das tecnologias utilizadas

Abaixo estão algumas das tecnologias utilizadas durante o desenvolvimento do backend. Ainda foi visado: Organizar o diretório da nossa aplicação de forma concisa, limpa e eficiente. Escrever código limpo visando reutilização e eficiência e criar testes unitários de integração.


⌨️ Instalação e Execução do Projeto

  • Clone este repositório
> git clone https://github.com/danielgorgonha/backend-challenge-dynamox
  • Navegue até o diretório principal do projeto
> cd backend-challenge-dynamox
  • Instale as dependências com o Yarn
yarn
  • Utilizando o Docker Compose
docker-compose up -d
  • Instale as migrations
yarn typeorm migration:run
  • Insert Administrator - (Acesse a rota /login, passando { email e password } para ter acesso ao token JWT)
yarn seed:admin
  • Rode a suite de testes
yarn test
  • Execute o projeto
yarn dev


Documentações com Swagger

O que foi documentado?

Neste desafio foi documentado as entradas e saídas da API. Abaixo os principais pontos documentado:

  • Informações gerais da API (nome, descrição, etc.);
  • Rotas;
  • Parâmetros;
  • Corpo da Requisição;
  • Respostas de sucesso;
  • Respostas de erro;
  • Exemplos;

📝 Licença

Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


Feito com 💜 by Daniel R Gorgonha 👋

backend-challenge-dynamox's People

Contributors

danielgorgonha 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.