Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/gabrielgpavao/gabrielpavao-teste-tecnico-ozmap-api

Uma API REST com um CRUD de usuários, feita em NodeJS, Koa e TypeScript, além de possuir testes escritos com Mocha e Chai.
https://github.com/gabrielgpavao/gabrielpavao-teste-tecnico-ozmap-api

chai eslint koa mocha nodejs sqlite swagger typeorm typescript zod

Last synced: 27 days ago
JSON representation

Uma API REST com um CRUD de usuários, feita em NodeJS, Koa e TypeScript, além de possuir testes escritos com Mocha e Chai.

Awesome Lists containing this project

README

        

## Sumário

- [Início Rápido](#1-início-rápido)
- [Instalando Dependências](#11-instalando-dependências)
- [Variáveis de Ambiente](#12-variáveis-de-ambiente)
- [Migrações](#13-migrações)
- [Inicialização do Servidor](#14-inicialização-do-servidor)
- [Execução dos Testes](#15-execução-dos-testes)
- [Documentação da API](#2-documentação-da-api)
- [Diagrama de Entidade Relacionamento (DER)](#3-diagrama-de-entidade-relacionamento)

---

## 1. Início Rápido
[ Voltar para o topo ](#sumário)

### 1.1. Instalando Dependências

Clone o projeto em sua máquina e instale as dependências com o comando:

Caso use npm
```bash
npm install
```

Caso use yarn
```bash
yarn
```
---

### 1.2. Variáveis de Ambiente

Em seguida, crie um arquivo **.env**, copiando o formato do arquivo **.env.example**:
```
cp .env.example .env
```

Em seguida, dentro do arquivo `.env`, atribua um número para a variável `APP_PORT`, que, por sua vez, servirá para indicar em qual porta o seu servidor será iniciado.
Caso deseje rodar os testes da aplicação, atribua o valor `"teste"` à variável `NODE_ENV`

---

### 1.3 Migrações

Execute as migrações para criar as entidades da aplicação com o comando:

Caso use npm
```bash
npm run typeorm migration:run -- -d src/data-source
```

Caso use yarn
```bash
yarn typeorm migration:run -d src/data-source.ts
```

---

### 1.4. Inicialização do Servidor

Inicie o servidor localmente com o comando:

Caso use npm
```bash
npm run dev
```

Caso use yarn
```bash
yarn dev
```

---

### 1.5 Execução dos Testes

O projeto possui cobertura de testes automatizados feitos com Mocha e Chai.
Portanto, rode os testes com o comando:

Caso use npm
```bash
npm run test
```

Caso use yarn
```bash
yarn test
```

`Obs: Certifique-se de que a variável de ambiente NODE_ENV está com o valor "test" atribuído a mesma.`

---

## 2. Documentação da API
[ Voltar para o topo ](#sumário)

A documentação da API foi feita com o Swagger e está localizada na rota `/swagger` da url base.

Exemplo:
```
http://localhost:3001/swagger
```

---

## 3. Diagrama de Entidade Relacionamento
[ Voltar para o topo ](#sumário)

Relações entre as tabelas do banco de dados.

![DER](https://i.imgur.com/dLvDgDp.jpg)