NestJS-Boilerplate/README.md
2024-06-11 13:17:46 +00:00

127 lines
2.7 KiB
Markdown

# NestJS TypeORM Boilerplate
Este repositório é um boilerplate para iniciar um projeto usando [NestJS](https://nestjs.com/) com [TypeORM](https://typeorm.io/). Ele fornece uma estrutura inicial para desenvolver APIs com suporte a banco de dados relacional, incluindo scripts para gerenciamento de migrações, testes, linting e formatação de código.
## Estrutura do Projeto
A estrutura do projeto segue as melhores práticas recomendadas pelo NestJS, incluindo a organização de módulos, controladores, serviços e entidades. O TypeORM é configurado para trabalhar com PostgreSQL, mas pode ser facilmente adaptado para outros bancos de dados suportados.
## Pré-requisitos
- Node.js v16 ou superior
- npm v8 ou superior
- Banco de dados PostgreSQL
## Instalação
1. Clone o repositório:
```bash
git clone https://gitea.pradoc.com.br/Rhuan/NestJS-Boilerplate.git
cd nestjs_typeorm
```
2. Instale as dependências:
```bash
npm install
```
3. Configure as variáveis de ambiente criando um arquivo `.env` na raiz do projeto. Exemplo:
```env
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_USER=seu-usuario
DATABASE_PASSWORD=sua-senha
DATABASE_NAME=seu-banco-de-dados
JWT_SECRET=sua-chave-secreta
```
## Scripts Disponíveis
### Desenvolvimento
- Iniciar o servidor em modo de desenvolvimento:
```bash
npm run start:dev
```
- Iniciar o servidor com depuração:
```bash
npm run start:debug
```
### Produção
- Construir o projeto:
```bash
npm run build
```
- Iniciar o servidor em modo de produção:
```bash
npm run start:prod
```
### Linting e Formatação
- Lint do código:
```bash
npm run lint
```
- Formatar o código:
```bash
npm run format
```
### Testes
- Executar todos os testes:
```bash
npm run test
```
- Executar os testes em modo de observação:
```bash
npm run test:watch
```
- Executar testes com cobertura:
```bash
npm run test:cov
```
- Executar testes end-to-end:
```bash
npm run test:e2e
```
### Migrações TypeORM
- Criar uma nova migração:
```bash
npm run typeorm:create
```
- Gerar uma nova migração com base nas mudanças nas entidades:
```bash
npm run typeorm:generate
```
- Executar as migrações:
```bash
npm run typeorm:run
```
- Reverter a última migração:
```bash
npm run typeorm:revert
```
## Autor
[Rhuan Prado](https://gitea.pradoc.com.br/Rhuan)
---
Este boilerplate é uma excelente base para projetos NestJS utilizando TypeORM, com suporte completo a desenvolvimento, testes, linting, formatação e gerenciamento de migrações de banco de dados.