Projeto de uma API de loja, utilizando um banco de dados SQL, desenvolvido durante o curso de Desenvolvimento Web Full Stack da Trybe.
A API foi construída utilizando os princípios REST e seguindo a arquitetura MSC (Model, Service, Controller).
Suas principais funcionalidades são:
- Busca, cadastro, atualização e remoção de productos
- Busca, cadastro, atualização e remoção de vendas
StoreManager.sql
é responsável pela criação do banco de dados usado pela API e foi fornecido pela Trybe.
As tecnologias utilizadas para o desenvolvimento da aplicação foram:
- Node.js
- MySQL
- Express
- Dotenv
- Joi
- Mocha
- Chai
- Sinon
Para executar o projeto, é necessário:
- Clonar este repositório
git clone https://github.com/tainnaps/trybe-smith.git
- Instalar as dependências na branch
main
npm install
-
Ter um servidor MySQL no computador
-
Ter um cliente MySQL e conectá-lo ao servidor
-
Executar as queries do arquivo
StoreManager.sql
no cliente MySQL para criar o banco de dados -
Iniciar o servidor da aplicação
npm start
O projeto conta com testes unitários, desenvolvidos por mim usando Mocha
, Chai
e Sinon
, para as camadas de Model, Service e Controller, cobrindo 62% dos arquivos dessas camadas.
Para rodar os testes do projeto, é necessário executar o seguinte comando:
npm run test:mocha