/treino-nestjs

Primary LanguageTypeScript

CRUD de Usuários em NestJS

Nest Logo

Descrição

Este repositório contém um projeto NestJS para um sistema CRUD (Create, Read, Update, Delete) de usuários. O projeto utiliza TypeScript e segue as melhores práticas recomendadas pelo framework NestJS.

Instalação
$ npm install
Rodando a aplicação
# desenvolvimento
$ npm run start

# modo observação
$ npm run start:dev

# modo produção
$ npm run start:prod
Documentação da API

Endpoints

  • POST /users - Cria um novo usuário.
  • GET /users - Lista todos os usuários.
  • GET /users/:email - Busca um usuário pelo e-mail.
  • PATCH /users/:email - Atualiza os dados de um usuário existente pelo e-mail.
  • DELETE /users/:email - Remove um usuário pelo e-mail.

DTOs

CreateUserDto

  • name (string): Nome do usuário (mínimo 4 caracteres, máximo 20).
  • email (string): E-mail válido do usuário.
  • password (string): Senha do usuário (mínimo 6 caracteres).

UpdateUserDto

  • Herda de CreateUserDto, todos os campos são opcionais para atualização.
Exemplos de uso
Criar usuário
POST /users
Content-Type: application/json

{
    "name": "Nome do Usuário",
    "email": "email@exemplo.com",
    "password": "senha123"
}
Listar todos os usuários
GET /users
Buscar usuário por e-mail
GET /users/email@exemplo.com
Atualizar usuário por e-mail
PATCH /users/email@exemplo.com
Content-Type: application/json

{
    "name": "Nome Atualizado",
    "email": "novoemail@exemplo.com",
    "password": "novaSenha123"
}
Remover usuário por e-mail
DELETE /users/email@exemplo.com