Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mairess/project-store-manager

Essa é uma API para gerenciamento de vendas, implementada com node, express, javascript e mysql. Ela é testada com mocha, chai e sinon e documentada com swagger.
https://github.com/mairess/project-store-manager

chai express javascript mocha msc-architecture mysql nodejs sinon sql

Last synced: 10 days ago
JSON representation

Essa é uma API para gerenciamento de vendas, implementada com node, express, javascript e mysql. Ela é testada com mocha, chai e sinon e documentada com swagger.

Awesome Lists containing this project

README

        

#

Projeto Store Manager





## Contexto

Este projeto consiste em uma `API completamente RESTful` para gerenciamento de vendas, utilizando `Node`, `Express`, `Javascript,` e `MySQL`, seguindo a arquitetura em camadas `MSC`. Nessa aplicação é possível fazer um `CRUD`, criar, visualizar, deletar e atualizar produtos e vendas. Além disso, ela possui uma boa cobertura de teste utilizando `mocha`, `chai` e `sinon` e a documentação é feita com o `swagger`

Rode o projeto localmente

> ⚠️ É preciso ter o [Node](https://nodejs.org/en) instalado em sua máquina.
>
> ⚠️ É preciso criar um arquivo `.env` na raiz do projeto, siga o exemplo do arquivo [`env.example`](./env.example).
>

1. Clone o repositório:

```BASH
git clone [email protected]:mairess/project-store-manager.git
```

2. Instale as dependências:

```BASH
npm install
```

3. Inicie o banco de dados:

```BASH
docker compose up -d db
```

4. Inicie o server:

```BASH
env $(cat .env) npm run dev:local
```

5. O servidor estará disponível na porta `3001`

Rode o projeto com o docker

> ⚠️ É preciso ter o [Docker](https://www.docker.com/get-started/) instalado em sua máquina.

1. Clone o repositório:

```BASH
git clone [email protected]:mairess/project-store-manager.git
```

2. Suba os containers:

```BASH
docker compose up -d
```

3. O servidor estará disponível na porta `3001`

Rode os testes

Rode os testes com:

```SHELL
npm run test:mocha
```

Rode a cobertura:

```SHELL
npm run test:coverage
```

Rode a cobertura de mutação:

```SHELL
npm run test:coverage
```

## Documentação da API

A documentação desta api está disponível em `/api-docs`

## Tecnologias utilizadas

- Javascript
- Node
- Express
- MySQL
- Joi
- Docker
- swagger-ui
- Mocha
- Chai
- Sinon