Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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.
- Host: GitHub
- URL: https://github.com/gabrielgpavao/gabrielpavao-teste-tecnico-ozmap-api
- Owner: gabrielgpavao
- Created: 2023-06-01T16:31:15.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-06-15T18:07:22.000Z (over 1 year ago)
- Last Synced: 2024-10-16T19:12:16.843Z (3 months ago)
- Topics: chai, eslint, koa, mocha, nodejs, sqlite, swagger, typeorm, typescript, zod
- Language: TypeScript
- Homepage:
- Size: 74.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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)