Projeto prático de Nest.js - API de gerenciamento de professores e aulas particulares \| TreinaWeb             Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 01 Horas 

 35 Min 

 57 Seg 

   Tempo restante da oferta: 01 35 57 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

    [ Início ](https://www.treinaweb.com.br) [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos) [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end) Nest.js - API de gerenciamento de professores e aulas particulares   Projeto Prático 

# Nest.js - API de gerenciamento de professores e aulas particulares

Aprenda a criar APIs Restful de ponta a ponta com as melhores práticas utilizando o NestJS.

  ![](https://d1s1vlotnxklap.cloudfront.net/professores/wesley-gado.webp)   [ Wesley Gado ](https://www.treinaweb.com.br/professor/wesley-gado) Instrutor  

  ![](https://d2knvm16wkt3ia.cloudfront.net/treinaweb/cursos/og/nestjs-api-gerenciamento-professores-aulas-particulares.png)   Assista à apresentação  Assistir: Apresentação: Nest.js - API de gerenciamento de professores e aulas particulares  

- 07h33 de vídeos
- 59 aulas
- Certificado de 12 horas
- Intermediário

 **+200 mil alunos** já aceleraram a carreira aqui, com **professores que atuam no mercado**

## Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **01h 35min 57s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

  Visão geral

## Sobre o projeto

Nesse projeto prático você aprenderá como desenvolver uma API REST para gerenciamento de professores e aulas particulares com Node.js e NestJS. Você aprenderá como implementar diferentes tipos de relacionamento com o TypeORM, trabalhar com validações, implementar autenticação utilizando tokens JWT, utilizar as boas práticas de código em todo o projeto.

### Pra quem é esse projeto?

Esse curso é voltado a desenvolvedores que já conhecem os conceitos do Node.js, mas ainda possuem dúvidas de como aplicá-los dentro de um sistema na prática.

   Competências

## O que irá aprender?

- Integração com o NestJS;
- Configuração do MySQL com o TypORM;
- Utilização das camadas de serviço, repositório e DTOs;
- Validação com class-validator;
- Uso do TypeORM para lidar com relacionamentos no banco de dados;
- Rotas;
- Request e Response;
- Configuração de Filters;
- Autenticação com JWT e Passport;
- Guards para proteção de rotas;
- Tratamento de exceções;
- Upload de arquivos para serviços de armazenamento de dados externo.

   Antes de começar

## Pré-requisitos sugeridos

 Não são obrigatórios — apenas sugestões de base para você tirar mais proveito do curso.

 [  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/node-js.svg)    **Node.js - Fundamentos**   10h · Iniciante   ](https://www.treinaweb.com.br/curso/nodejs-fundamentos) [  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/nest-js.svg)    **Nest.js - Fundamentos**   8h · Iniciante   ](https://www.treinaweb.com.br/curso/nestjs-fundamentos) 

   Ementa completa

## Conteúdo programático

 12 módulos, 59 aulas , num total de 07h33 de vídeo .

    01   Introdução   2 aulas  

- Apresentação
- Repositório do curso

     02   Requisitos do projeto   3 aulas  

- Entendendo o projeto a ser desenvolvido
- Requisitos funcionais e não funcionais
- Casos de uso

     03   Preparando o projeto   2 aulas  

- Configurando projeto
- Configurando TypeORM

     04   Criando entidades e executando migrations   4 aulas  

- Criando entidade Professores
- Configurando migrations
- Criando entidade Alunos
- Gerando e executando migration Alunos

     05   Criando rota de busca e detalhes do professor   6 aulas  

- Criando DTO e mappers Professor
- Implementando Professor service
- Serialização dos dados com Class-Transformer
- Implementando busca por query params
- Implementando rota de detalhes do Professor
- Tratando exceção de Professor não encontrado

     06   Criando rota para cadastro de aluno e aula   6 aulas  

- Criando DTO e mapper dos Alunos
- Configurando service cadastrar aula
- Configurando module, ajuste no Aluno mapper e cadastro de aula
- Utilizando Class-Validator para validação
- Criando validation exception filter
- Criando validação customizada da data aula

     07   Cadastro professor   6 aulas  

- Implementando DTO e mapper de Professor
- Implementando cadastro de Professor
- Configurando validações no cadastro de Professor
- Validação de email já cadastrado
- Validação de confirmação de senha com Class-Validator
- Hash de senha com Bcrypt

     08   Login   17 aulas  

- O que é JWT?
- Fluxo de autenticação baseado em JWT
- Configurando Auth service
- Configurando JWT strategy
- Configurando controller Auth
- Criando Auth DTO e gerando token
- Ajustando exceções de validação e unauthorized
- Configurando refresh token
- Criando rota refresh roken
- Testando rota refresh token
- Configurando rota detalhes do professor logado
- Ajustando e testando rota me
- Criando me exception
- Criando entidade e migration token inválido
- Invalidando refresh token
- Rota logout salvando tokens na blacklist
- Ajustes no método logout

     09   Atualização de dados pessoais   8 aulas  

- Atualização de Professor
- Ajustando response da rota de atualização de dados do Professor
- Ajustando validação de email já existente
- Atualizando validação de email atualização Professor
- Como realizar upload no S3 com NestJS
- Implementando base do upload de foto de perfil
- Implementando upload de foto no S3
- Validando foto perfil do Professor

     10   Listando alunos   1 aula  

- Listando Alunos por Professor

     11   Exclusão de professor   1 aula  

- Implementando exclusão de Professor

     12   Ajustes finais da aplicação   3 aulas  

- Ajustando exceptions
- Configurando CORS e variáveis de ambiente
- Ajustes finais da aplicação

 [ Download da ementa ](https://www.treinaweb.com.br/projeto-pratico/nestjs-api-de-gerenciamento-de-professores-e-aulas-particulares/ementa/nestjs-api-de-gerenciamento-de-professores-e-aulas-particulares.pdf) 

   Depoimentos de alunos

## Utilizada e amada por milhares de desenvolvedores.

  ![](https://d32nikm1p4rl61.cloudfront.net/12ceebffd53db92c6925563fea0775e1.png)   Caio  São Gonçalo / RJ · C# (C Sharp) Básico  

 Avaliação: 5 de 5 estrelas.

 “Ótimo curso para iniciação a linguagem de C#. Tive uma certa familiaridade pois já conhecia JAVA, sendo assim fez com que muitos conceitos acabaram sendo reforçados e fixados. Em relação aos vídeos as aulas são muito didáticas e dinâmicas, e isso é ótimo.”

   ![](https://d32nikm1p4rl61.cloudfront.net/32baaef09085ad7f9d3ea66db1d6b4de.png)   Dimitrius  Três Corações / MG · C# (C Sharp) Básico  

 Avaliação: 5 de 5 estrelas.

 “Ótimo curso! Realmente bastante esclarecedor e didático. O conteúdo é bem completo, abrangendo diversos assuntos de forma dinâmica e complementar, o que ajuda, e muito, no aprendizado e na visão de aplicabilidade. Além de todo o ambiente e dos recursos disponíveis tornarem o estudo mais amigável e menos cansativo.”

   ![](https://d32nikm1p4rl61.cloudfront.net/741f7c9feafed3c96de18143a781707f.png)   Rodrigo  Presidente Prudente / SP · C# (C Sharp) Básico  

 Avaliação: 5 de 5 estrelas.

 “O curso TreinaWeb - C# Básico me serviu para abrir muitas portas e me dar conhecimento além do que eu já vi em sala de aula. Quero dizer também, que gostei muito da didática do curso, pois acho que a aprendizagem só fica 'redondinha' quando vimos a prática, logo após a teoria! Recomendei o curso e o site da TreinaWeb para todos os meus amigos e conhecidos... Estou aguardando ansiosamente para começar o curso C# Intermediário e espero que possa ter uma experiencia tão boa quanto eu tive neste curso!”

 [ Veja mais opiniões reais ](https://www.treinaweb.com.br/depoimentos) 

## Comece este projeto ainda hoje.

 07h33 de vídeo, certificado de 12 horas — mais todos os outros cursos e formações da TreinaWeb na mesma assinatura.

 [Quero assinar](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

  Continue aprendendo

## Conteúdos relacionados

- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/nest-js.svg)  Iniciante  

     Projeto Prático · 4h

    ###  [ Nest.js - Instalação do ambiente de produção e deploy em uma VPS ](https://www.treinaweb.com.br/projeto-pratico/nestjs-instalacao-do-ambiente-de-producao-e-deploy-em-uma-vps "Nest.js - Instalação do ambiente de produção e deploy em uma VPS") 

    Ver detalhes →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/nest-js.svg)  Intermediário  

     Projeto Prático · 8h

    ###  [ Nest.js - Gerenciador de projetos ](https://www.treinaweb.com.br/projeto-pratico/nestjs-gerenciador-de-projetos "Nest.js - Gerenciador de projetos") 

    Ver detalhes →
- ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/ia-para-devs.svg)  Iniciante  

     Projeto Prático · 6h

    ###  [ IA Para Devs - Construindo APIs com Nest.js e IA ](https://www.treinaweb.com.br/projeto-pratico/ia-para-devs-construindo-apis-com-nestjs-e-ia "IA Para Devs -  Construindo APIs com Nest.js e IA") 

    Ver detalhes →

   Trilhas completas

## Formações que incluem este conteúdo

- Formação  ![](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/nest-js.svg) 

     Back-end

    ###  [ Especialista Nest.js ](https://www.treinaweb.com.br/formacao/especialista-nestjs "Especialista Nest.js") 

    Nesta formação, aprenda desde o zero como desenvolver aplicações web e APIs utilizando o NestJS

      21 cursos   50h29 de vídeos

## Um ano de acesso total para você viver de programação.

 Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro `console.log` ao mercado de trabalho.

- **1 ano** de acesso a **todos os cursos**
- Cursos novos **toda semana**
- Suporte **direto com professores**
- Plano de carreira **personalizado**
- **Certificados digitais** inclusos
- **Aplicativos** para Android e iOS, com **acesso offline**

    **Garantia incondicional de satisfação** 

 Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

### Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **01h 35min 57s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

    Ainda tem alguma dúvida?

## Antes de começar, veja o que você precisa saber.

 Não encontrou a sua pergunta aqui? Fale com a nossa equipe antes de decidir — é para isso que ela está lá.

 [Falar com a equipe →](https://www.treinaweb.com.br/contato)    Estou começando do zero. A TreinaWeb é para mim? 

Sim. A plataforma possui conteúdos para quem está dando os primeiros passos em programação, incluindo fundamentos e formações organizadas para ajudar você a avançar progressivamente.

Se você ainda não programa, recomendamos começar pelas bases antes de entrar em conteúdos mais avançados de IA aplicada ao desenvolvimento.

   Já sou desenvolvedor. Vou encontrar conteúdo para mim? 

Sim. Além dos conteúdos fundamentais, a TreinaWeb possui formações, cursos intermediários e avançados, frameworks, arquitetura, infraestrutura e uma formação dedicada à aplicação de IA no desenvolvimento.

   A TreinaWeb tem cursos de Inteligência Artificial para desenvolvedores? 

Sim. A Formação IA para Devs reúne conteúdos sobre ferramentas e conceitos utilizados no desenvolvimento assistido por IA, incluindo GitHub Copilot, Cursor, Claude Code, Gemini CLI, MCP, Prompt Engineering, n8n e outros recursos.

   Preciso saber programar para fazer a Formação IA para Devs? 

A Formação IA para Devs é especialmente indicada para quem já possui conhecimentos de programação.

Se você ainda está começando, pode primeiro desenvolver sua base com os cursos e formações de programação disponíveis na própria TreinaWeb e depois avançar para IA.

   Tenho acesso a todos os cursos? 

Sim. Durante o período da assinatura, você tem acesso aos cursos e formações contemplados pelo plano anual da TreinaWeb.

   Por quanto tempo tenho acesso? 

O plano apresentado nesta página oferece 12 meses de acesso à plataforma.

   Existe uma ordem recomendada para estudar? 

Sim. As formações e planos de carreira ajudam você a organizar o aprendizado e entender quais conteúdos fazem mais sentido para cada etapa.

   Posso tirar dúvidas? 

Sim. A assinatura inclui os canais de suporte disponibilizados pela TreinaWeb para que você possa esclarecer dúvidas relacionadas aos conteúdos estudados.

   Os cursos possuem certificado? 

Sim. Os certificados digitais dos cursos concluídos estão incluídos na assinatura, de acordo com as regras de conclusão da plataforma.

   Posso estudar pelo celular? 

Sim. A TreinaWeb possui aplicativos para Android e iOS e oferece recursos de acesso offline pelo aplicativo.

   A TreinaWeb lança novos cursos? 

Sim. Novos conteúdos são adicionados regularmente à plataforma para acompanhar a evolução das tecnologias e ferramentas utilizadas no desenvolvimento.

   Como funciona a garantia? 

Você possui 7 dias de garantia para conhecer a plataforma. Caso decida que a TreinaWeb não atende às suas expectativas dentro desse período, poderá solicitar o reembolso conforme as condições da garantia.

## Comece hoje a programar com IA ao seu lado.

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)

 Escola online de programação, tecnologia e IA.

- [  ](https://www.facebook.com/TreinaWeb/)
- [  ](https://www.instagram.com/treinaweb/)
- [  ](https://www.youtube.com/user/TreinaWeb)
- [  ](https://twitter.com/treinaweb)
- [  ](https://www.linkedin.com/company/treinaweb)
- [  ](https://github.com/treinaweb)

## Inscreva-se em nossa newsletter

Receba lançamentos, promoções e novidades.

   Seu nome     Seu WhatsApp     Seu melhor e-mail   Inscrever-se 

## Cursos

- [ Base para Devs ](https://www.treinaweb.com.br/categoria/base-para-devs)
- [ Front-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-front-end)
- [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end)
- [ Mobile ](https://www.treinaweb.com.br/categoria/desenvolvimento-mobile)
- [ Bancos de Dados ](https://www.treinaweb.com.br/categoria/bancos-de-dados)
- [ Cloud ](https://www.treinaweb.com.br/categoria/cloud-computing)
- [ IA ](https://www.treinaweb.com.br/categoria/ia)
- [ E mais ](https://www.treinaweb.com.br/categoria/e-mais)
- [ Ver todos os cursos ](https://www.treinaweb.com.br/cursos)

## Conteúdo

- [ Formações ](https://www.treinaweb.com.br/formacoes)
- [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos)
- [ Direto ao ponto ](https://www.treinaweb.com.br/direto-ao-ponto)
- [ Planos ](https://www.treinaweb.com.br#assinatura)
- [ Depoimentos ](https://www.treinaweb.com.br#depoimentos)
- [ Comunidade ](https://www.treinaweb.com.br#comunidade)
- [ Corpo docente ](https://www.treinaweb.com.br#docente)

## A empresa

- [ Sobre a TreinaWeb ](https://www.treinaweb.com.br#sobre)
- [ Perguntas frequentes ](https://www.treinaweb.com.br#faq)
- [ Vantagens de estudar na TreinaWeb ](https://www.treinaweb.com.br/vantagens-de-estudar-na-treinaweb)
- [ Cursos para empresas ](https://www.treinaweb.com.br/empresas)
- [ Sugira um novo curso ](https://www.treinaweb.com.br/sugerir-curso)
- [ Trabalhe conosco ](https://www.treinaweb.com.br/trabalhe-conosco)
- [ Artigos ](https://www.treinaweb.com.br/blog)
- [ Desenvolvedores e agentes ](https://www.treinaweb.com.br/developers)
- [ Contato ](https://www.treinaweb.com.br/contato)
- [ Política de privacidade ](https://www.treinaweb.com.br/politica-de-privacidade)
- [ Termos de uso ](https://www.treinaweb.com.br/termos-de-uso)

## Baixe nosso aplicativo

 [   Disponível na **App Store**  ](https://apps.apple.com/us/app/treinaweb/id1322729447) [   Disponível no **Google Play**  ](https://play.google.com/store/apps/details?id=br.com.treinaweb.mobile) 

  Av. Paulista, 1765, Conj 71 e 72 · Bela Vista · São Paulo · SP · 01311-200   © 2004 – 2026 TreinaWeb Tecnologia LTDA · CNPJ 06.156.637/0001-58
