NestJS Básico: Construindo APIs com Node.js
- Nível: Junior
- Módulos: 8
- Aulas: 17
- Tempo de leitura: 6h 55min
- Tecnologias: NestJS, JavaScript, Node.js
- Preço: Gratuito
Código do curso: github.com/johnpires/nestjs-junior-projeto-final
NestJS é um framework Node.js progressivo para a construção de aplicações server-side eficientes, confiáveis e escaláveis. Construído sobre o TypeScript e combinando elementos de POO (Programação Orientada a Objetos), FP (Programação Funcional) e FRP (Programação Reativa Funcional), o NestJS se tornou uma das escolhas mais populares entre desenvolvedores backend modernos.
Neste curso, você aprenderá os fundamentos do NestJS do zero, partindo da instalação e configuração do ambiente até a criação de uma API REST completa. Abordaremos os conceitos centrais do framework: Controllers, Providers, Services, Módulos, DTOs, Pipes de validação e tratamento de erros. Toda a progressão foi planejada para quem já tem conhecimento básico de JavaScript e quer dar o próximo passo na construção de backends profissionais.
Ao concluir este curso, você terá construído uma API funcional de gerenciamento de tarefas, aplicando todos os conceitos aprendidos em um projeto real. Você entenderá a arquitetura modular do NestJS, saberá como estruturar projetos de médio porte e estará preparado para evoluir para tópicos avançados como autenticação JWT, integração com bancos de dados e testes automatizados.
O que você vai aprender
Ao final deste curso, você será capaz de:
- Configurar e iniciar um projeto NestJS do zero usando o NestJS CLI
- Criar Controllers com rotas GET, POST, PUT e DELETE usando os decorators do NestJS
- Desenvolver Services e entender o padrão de Injeção de Dependência do NestJS
- Organizar o código em Módulos para manter a arquitetura limpa e escalável
- Criar e utilizar DTOs (Data Transfer Objects) para validar e tipar os dados de entrada
- Aplicar Pipes de validação global com class-validator para garantir integridade dos dados
- Tratar erros e exceções HTTP de forma padronizada usando os mecanismos do NestJS
- Construir uma API REST completa de gerenciamento de tarefas do início ao fim
Pré-requisitos
Para aproveitar ao máximo este curso, é necessário ter conhecimento básico de JavaScript (variáveis, funções, objetos, arrays e Promises) e familiaridade com o terminal/linha de comando. Conhecimento introdutório de TypeScript é desejável, mas não obrigatório — o curso apresenta os conceitos de TypeScript necessários ao longo das aulas. É recomendável ter Node.js (versão 18 ou superior) instalado na sua máquina.
Conteúdo do curso
Módulo 1: Introdução ao NestJS
Conheça o NestJS, entenda sua arquitetura e configure o ambiente de desenvolvimento para começar a construir APIs profissionais.
- O que é NestJS e por que usá-lo? (20 min)
- Instalação e criação do primeiro projeto (25 min)
- Decorators e conceitos fundamentais do NestJS (25 min)
Módulo 2: Controllers e Rotas HTTP
Aprenda a criar controllers para expor endpoints HTTP, manipular parâmetros de rota, query strings e corpo da requisição.
- Criando controllers e mapeando rotas (25 min)
- Parâmetros de rota, query strings e corpo da requisição (25 min)
- Respostas HTTP, status codes e cabeçalhos de resposta (20 min)
Módulo 3: Providers e Services
Compreenda o sistema de Providers do NestJS e aprenda a criar Services para encapsular a lógica de negócio da aplicação.
- O que são Providers e como criar Services (25 min)
- Injeção de Dependência na prática (20 min)
Módulo 4: Módulos NestJS
Aprenda a organizar sua aplicação em módulos coesos e reutilizáveis, entendendo como importar e exportar funcionalidades entre módulos.
- Estrutura e organização de módulos (25 min)
- Importando e exportando entre módulos (20 min)
Módulo 5: DTOs e Validação de Dados
Aprenda a criar DTOs (Data Transfer Objects) e a usar class-validator para garantir que os dados recebidos pela API sejam válidos.
- Criando DTOs com TypeScript (20 min)
- Validação com class-validator e ValidationPipe (30 min)
Módulo 6: Pipes e Transformação de Dados
Conheça os Pipes do NestJS e como usá-los para transformar e validar dados antes que cheguem aos handlers dos controllers.
- Pipes built-in e criando pipes customizados (25 min)
Módulo 7: Tratamento de Erros e Exceções
Aprenda como o NestJS trata erros e como usar exceções HTTP, filtros e respostas padronizadas de erro em sua API.
- Exceções HTTP e Exception Filters (30 min)
Módulo 8: Projeto Final: API de Gerenciamento de Tarefas
Aplique todos os conceitos do curso construindo uma API REST completa de gerenciamento de tarefas, do zero ao produto final funcional.
- Planejamento e estrutura da API de Tarefas (20 min)
- Implementando o CRUD de tarefas (35 min)
- Configuração final e testando a API completa (25 min)