Minha primeira API utilizando a arquitetura MSC baseado no Diagrama Entidade-Relacionamento (DER) !
Diagrama está em ./public/erStoreManager.png
A API foi construída para um sistema de gerenciamento de vendas no formato dropshipping em que será possível criar, visualizar, deletar e atualizar produtos e vendas. Foi utilizado o banco de dados MySQL para a gestão de dados. API Restful na arquitetura MSC bem como alguns testes para prática de QA.
Feito utilizando docker para ambiente de desenvolvimento.
Back-end:
Desenvolvido usando: Express.JS, MySql2, NodeJS, Docker
Testes: Chai, Mocha, Jest
-
A pessoa usuária, independente de cadastro, consegue:
- Adicionar, ler, deletar e atualizar produtos;
- Enviar vendas para o sistema e essas vendas devem validar se o produto em questão existe;
- Ler, deletar e atualizar vendas.
-
Cada camada da API está no seu respectivo diretório:
- A camada Models está no diretório de nome
models
; - A camada Services está no diretório de nome
services
; - A camada Controllers está no diretório de nome
controllers
; - Os Middlewares estão no diretório de nome
middlewares
.
- A camada Models está no diretório de nome
Para Criar e povoar o banco de dados, existem os arquivos migration.sql e seed.sql.
Para clonar:
git clone git@github.com:brunomourabastos/store-manager.git
Backend
cd store-manager/
npm install
docker-compose up -d (precisa ter o docker instalado)
-
Para rodar o back-end:
cd store-manager/ && npm start
-
Para rodar todos os testes:
npm test