A utilização da API do Nest.JS foi documentada utilizando o Swagger. Para iniciar a API acesse a URL http://localhost:3000/api
# Baixar as dependências
npm install
# Iniciar o container mysql com o user root e o password 123
docker compose up
# Iniciar o servidor nest no ambiente de desenvolvimento na porta 3000
npm run start
npm run start:dev
: iniciar o nest no ambiente de desenvolvimentonest generate module categorias
: criar um módulo de categorias para agrupar o contexto de uma feature, no exemplo acima, feature de categoriasnest generate resource categorias
: criar todos os recursos (todos os métodos http do REST, ou GraphQL, micro-serviço, etc) de uma feature, podendo criar todos os entry points do CRUDnest g service prisma
: gerar um serviço prisma
docker compose up
: criar e inicia todos os containers do Docker (do arquivodocker-compose.yaml
) para rodar o MySQLdocker compose exec db bash
: executar um comando dentro de um container, no cenário: dentro do db, executar o comando bash
mysql --password
: acessar o mysql com o password, que será digitado depoisSHOW DATABASES;
: listar todos os banco de dadosuse nestjs;
: utilizar o banco de dados 'nestjs'show tables;
: listar todos as tabelasdescribe Categoria
: descrever a estrutura da tabela
É uma ORM para modelagem de dados
npm install @prisma/client
: instalar o prisma client
npx prisma init
: iniciar o prisma dentro da pasta raiz
npx prisma migrate dev
: criar uma migração (versionamento) para o banco de dados
npx prisma studio
: ferramenta que abre no browser para visualizar e manipular os dados dos banco de dados
Nest framework TypeScript starter repository.
# aplicação no ambiente de desenvolvimento
$ npm run start
# aplicação no ambiente watch mode (observação)
$ npm run start:dev
# aplicação no ambiente de produção
$ npm run start:prod
# Rodar testes unitários
$ npm run test
# Rodar testes e2e
$ npm run test:e2e
# Ver cobertura dos testes
$ npm run test:cov
PUT
: Atualizar o recurso por completo, é obrigado a passar TODOS os dadosPATCH
: Atualização parcial, passar todos os dados, ou apenas um único grupo de dados
É possível rodar um ambiente REPL (Read-Eval-Print-Loop) para testar o back-end do nest pelo terminal, você pode chamar os métodos dos providers e controllers pelo terminal.
Você cria um arquivo repl.ts e testa usando o comando npm run start -- --entryFile repl
// repl.ts
import { repl } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
await repl(AppModule);
}
bootstrap();