Pular para o conteúdo
Cursos

DevClub

LógicaFront-endBack-endMobile

IA Club

IA na prática
Estudar programaçãoEstudar IA

Trilha · Intermediário

Node e APIs

JavaScript no servidor: rotas, banco de dados, autenticação e a API que o front consome.

26 lições em ordem de estudo

Começando com Node

  1. 01O que é NodeNode.js é o JavaScript rodando fora do navegador: o que ele faz, onde é usado e o primeiro script executado no terminal, com a saída real.testado
  2. 02Instalar o Node.js com nvm e trocar de versão por projetoInstalar o nvm no Linux, macOS e Windows, fixar a versão do projeto com .nvmrc e resolver o command not found que aparece depois de instalar.testado
  3. 03npm e package.jsonO que cada campo do package.json faz, a diferença entre ^ e ~, para que serve o package-lock e como criar scripts que o time inteiro usa.testado
  4. 04ESM ou CommonJS no Node: import, require e o campo typeQuando usar import e quando usar require no Node, o que o type module muda no package.json e como sair dos erros de misturar os dois.testado

Arquivos e ambiente

  1. 05Ler e escrever arquivoreadFile, writeFile, appendFile e mkdir com async/await, o caminho certo com path.join e o erro ENOENT quando a pasta ainda não existe.testado
  2. 06Variáveis de ambienteComo ler process.env, carregar o .env com o --env-file nativo do Node, separar dev de produção e não deixar segredo vazar no repositório.testado

HTTP na mão

  1. 07Criar um servidor HTTP no Node sem framework nenhumSubir um servidor com node:http, ler método e URL, responder JSON com o status certo e entender por que o Express existe depois de 60 linhas.testado
  2. 08Métodos HTTP e status code: 200, 201, 400, 404 e 500Qual verbo usar em cada rota e qual status devolver em cada resposta, com tabela de decisão e a saída real de curl -i em cada caso de uma API Express.testado

Express

  1. 09O que é API RESTRecurso, verbo HTTP, status code e stateless explicados desenhando o contrato de uma API de tarefas, com cada requisição feita de verdade no curl.testado
  2. 10Express do zero: instalar, subir o servidor e criar a rotaInstalar o Express, criar o app, responder na primeira rota e entender o que o app.listen faz, com o servidor subindo no terminal de verdade.testado
  3. 11params, query e bodyDe onde vem cada dado que chega na rota, como declarar parâmetro na URL, ler filtros da query string e receber JSON no corpo sem quebrar nada.testado
  4. 12MiddlewareO que é middleware, o que acontece quando você esquece o next(), como aplicar só em um grupo de rotas e como escrever um logger que mede o tempo real.testado
  5. 13express.RouterComo quebrar um index.js de 400 linhas em rotas, controllers e serviços com express.Router, sem perder o prefixo nem os middlewares do grupo.testado
  6. 14CORSPor que o navegador bloqueia a chamada, o que o preflight OPTIONS faz e como configurar origem, credenciais e headers sem liberar tudo com asterisco.testado
  7. 15Tratamento de erroComo capturar o erro de todas as rotas num único middleware de quatro argumentos, padronizar a resposta JSON e não vazar stack trace em produção.testado

Entrada de dados

  1. 16Validar entradaComo recusar dado inválido antes do controller, converter tipos vindos da query, devolver 400 com a lista de campos errados e proteger o banco.testado
  2. 17Upload de arquivoReceber multipart/form-data, salvar em disco com nome seguro, limitar tamanho e tipo e devolver a URL do arquivo — testado com curl e com formulário.testado

Autenticação

  1. 18Hash de senha com bcrypt no Node: salvar e compararPor que senha nunca vai em texto puro nem em MD5, como gerar o hash com bcrypt, escolher o custo e comparar no login sem entregar pista nenhuma.testado
  2. 19Autenticação com JWTGerar o token no login, ler o header Authorization no middleware, proteger rotas e entender o que o JWT guarda — e o que ele não protege.testado

Produção

  1. 20Testar rotaTeste de rota com o runner que já vem no Node: separar app de servidor, checar status, corpo e header com supertest e medir cobertura sem instalar Jest.testado
  2. 21Deploy da APIO que muda entre a sua máquina e o servidor: porta pela env, start sem watch, healthcheck, logs e um Dockerfile enxuto que builda de verdade.testado

NestJS

  1. 22Primeiro projetoCrie seu primeiro projeto com Nest CLI, entenda os arquivos gerados e confirme a rota Hello World no NestJS 11 com Node 24 e Express padrão.testado
  2. 23Módulos e providersOrganize uma API NestJS em módulos, controllers e providers, entenda injeção de dependência e corrija o erro de provider não encontrado.testado
  3. 24DTO e validaçãoValide o body de uma API NestJS com DTO, class-validator, transformação e whitelist, reproduzindo respostas 400 antes da regra de negócio.testado
  4. 25Guards e autenticaçãoCrie login com JWT, proteja rotas com AuthGuard e entenda respostas 401 no NestJS 11, sem colocar chave secreta ou token real no código.testado
  5. 26Prisma com NestJSIntegre Prisma 7.9.1 ao NestJS com driver adapter, migration e PostgreSQL 18.6, usando um PrismaService injetável e consultas comprovadas no banco.testado