Curso de Backend Modular con Nest.js

Diseñá tu primera API modular en producción con NestJS

Al finalizar el curso vas a tener un backend completo construido con NestJS, MongoDB (Mongoose), Passport, JWT y WebSockets: operaciones CRUD, autenticación, roles, permisos y comunicación en tiempo real. Todo desarrollado en grupos reducidos de máximo 6 personas, con mentoría cercana y feedback sobre tu código para que tu API quede lista para producción o para tu portfolio.

Métricas del curso

  • 150+

    10 clases en vivo (2 h cada una)

  • 10+

    Proyecto final: API modular con JWT y WebSockets

  • Grupos reducidos (máx. 6 personas por cohorte)

  • Certificado de finalización del curso de NestJS

Inscripción a los cursos de programación

Elegí tu camino: frontend, backend o full stack. Inscribite en los cursos online en vivo y empezá a construir proyectos profesionales en grupos reducidos. Ver próximas fechas

No hay cohortes disponibles por el momento. Consultá por WhatsApp las próximas fechas para cursar programación.

Curso de NestJS Nivel Inicial–Intermedio

Este curso de NestJS está pensado para quienes ya manejan JavaScript/TypeScript y Node.js y quieren dar el salto a un backend modular, escalable y mantenible. Vas a aprender a estructurar APIs REST con NestJS, integrar MongoDB con Mongoose, sumar autenticación JWT, roles y WebSockets para tiempo real. Ideal si querés trabajar como backend developer o crecer hacia un perfil fullstack conectando este backend con React o Next.js.

  • Personas que vienen de Express u otros frameworks de Node y buscan un framework más estructurado y escalable.
  • Desarrolladores que quieren dominar DTOs, guards, autenticación con JWT, NestJS CLI y WebSockets.
  • Equipos técnicos que necesitan proyectos backend organizados por dominio, fáciles de mantener y escalar.
  • Organizaciones que desean estandarizar su stack backend con NestJS, MongoDB y buenas prácticas de arquitectura.

MODALIDAD

¿Cómo vas a aprender NestJS en este curso?

Aprendés NestJS en clases online en vivo, trabajando sobre una API real desde las primeras semanas. Cada grupo tiene como máximo 6 personas, lo que permite revisar código en detalle, ajustar el ritmo según tu experiencia y acompañarte en decisiones de arquitectura y diseño de endpoints.

Clases en vivo orientadas a proyecto

Implementación paso a paso, debugging en tiempo real, revisión de tus entregables y apoyo para destrabar problemas típicos de backend.

Clases en vivo del curso

Recursos de apoyo y ejemplos

Guías, ejemplos de código y snippets listos para reutilizar, para que refuerces los conceptos de NestJS entre clase y clase.

Contenido on demand del curso

Temario del Curso de Backend con NestJS

En este curso de NestJS vas a aprender a construir un backend moderno, modular y escalable usando TypeScript, NestJS, MongoDB (Mongoose), Passport y WebSockets. Desde la arquitectura por módulos, controladores y servicios, hasta DTOs, validaciones, autenticación con JWT, roles, guards y comunicación en tiempo real. Todo orientado a APIs reales pensadas para producción. Trabajamos en grupos reducidos de máximo 6 personas, con proyectos guiados, revisiones de código y un backend completo listo para integrarse con frontends en React/Next.js.

Introducción a NestJS, TypeScript y setup inicial

  • Instalación de NestJS con la CLI oficial

  • Arquitectura modular, convenciones y filosofía de NestJS

  • Configuración inicial del proyecto con TypeScript, scripts y estructura base (src/)

Proyecto NestJS inicial con estructura modular básica y endpoints de prueba

Módulos, controladores y servicios

  • Creación de módulos para organizar el dominio de la app

  • Controladores para manejar endpoints HTTP y rutas REST

  • Servicios reutilizables y separación clara de la lógica de negocio

Módulo de usuarios con controlador y servicio inicial siguiendo buenas prácticas

Inyección de dependencias y organización de la lógica

  • Sistema de inyección de dependencias (DI) de NestJS

  • Providers, repositorios y patrones para desacoplar la lógica

  • Estructura de carpetas orientada a dominio y mantenibilidad

Servicio conectado mediante DI y probado desde el controlador

Conexión a MongoDB con Mongoose

  • Integración de MongooseModule en NestJS

  • Definición de esquemas, modelos y tipos en TypeScript

  • Conexión de la base de datos y manejo básico de errores de persistencia

Modelo de usuario persistido en MongoDB con Mongoose y endpoints de lectura/escritura

Operaciones CRUD con DTOs y validaciones

  • Uso de Data Transfer Objects (DTOs) para tipar entradas y salidas

  • Validaciones con class-validator, pipes y manejo de datos inválidos

  • Manejo centralizado de errores y respuestas HTTP coherentes

Endpoints CRUD de usuarios con DTOs, validación de datos y respuestas tipadas

Autenticación con Passport y JWT

  • Configuración de Passport en NestJS con estrategias local/JWT

  • Generación, firma y validación de tokens JWT

  • Protección de rutas privadas y manejo de sesiones stateless

Sistema de login con JWT, endpoints protegidos y obtención de información del usuario autenticado

Roles, permisos y guards de autorización

  • Diseño de un sistema de roles (admin, user, etc.)

  • Guards y decoradores personalizados para control de acceso

  • Buenas prácticas de autorización y separación entre auth y permisos

Restricción de accesos a endpoints según roles utilizando guards y decoradores

WebSockets y comunicación en tiempo real

  • Configuración de WebSockets con Gateways de NestJS

  • Manejo de eventos en tiempo real (conexión, mensajes, salas)

  • Casos de uso: chat, notificaciones en vivo, actualizaciones de estado

Chat en tiempo real con WebSockets, Gateway de NestJS y eventos de conexión/mensaje

Testing y buenas prácticas en NestJS

  • Pruebas unitarias con Jest para servicios y lógica de negocio

  • Pruebas de integración para módulos y endpoints HTTP

  • Principios de clean code, arquitectura limpia y manejo de configuración

Pruebas unitarias e integración en el módulo de usuarios y autenticación

Proyecto Final: API completa con autenticación y WebSockets

  • Integración de CRUD, roles de usuario y capas de servicio

  • Autenticación JWT con Passport y guards de autorización

  • Comunicación en tiempo real con WebSockets para notificaciones o chat

Backend completo con NestJS, MongoDB, JWT, roles y WebSockets listo para conectar con un frontend
¿Necesito saber Express antes de aprender NestJS?Es recomendable, pero no obligatorio. NestJS usa Express por debajo, pero abstrae mucho de su funcionamiento. Si conoces JavaScript/TypeScript y los fundamentos HTTP (peticiones, respuestas), puedes empezar directamente con NestJS.
¿Por qué usar NestJS en lugar de Express puro?Express es minimalista pero desordenado en proyectos grandes. NestJS te obliga a usar una arquitectura modular (controladores, servicios, módulos) que hace tu código escalable, testeable y fácil de mantener en equipo.
¿Es obligatorio saber TypeScript?Sí. NestJS está construido con y para TypeScript. Si vienes de JS puro, este curso te servirá para aprender TypeScript aplicado al backend, ya que los decoradores y tipos son el corazón del framework.
¿Qué es la Inyección de Dependencias (DI)?Es un patrón de diseño donde las clases no crean sus dependencias, sino que las 'piden'. NestJS se encarga de instanciar y entregar las clases necesarias (servicios) automáticamente. Es clave para el testing y la modularidad.
¿Vemos bases de datos SQL o NoSQL?El curso se centra en **MongoDB (NoSQL)** usando Mongoose, que es muy popular en el stack MEAN/MERN. Sin embargo, los conceptos de NestJS (TypeORM, Prisma) son fácilmente transferibles a SQL.
¿Qué son los Decoradores (`@Controller`, `@Get`)?Son funciones especiales que añaden metadatos a clases o métodos. En NestJS, le dicen al framework 'esto es una ruta', 'esto es un cuerpo de petición', etc. Son la magia que hace que el código sea tan limpio.
¿Vemos WebSockets?Sí. NestJS tiene un módulo de Gateway excelente para WebSockets (Socket.io). Aprenderás a crear chats o notificaciones en tiempo real integradas perfectamente con tu lógica de backend.
¿Qué es un DTO (Data Transfer Object)?Es una clase que define cómo se ven los datos que enviamos o recibimos. En NestJS, los usamos junto con `class-validator` para validar automáticamente que el usuario no envíe basura a la API.
¿Cómo se maneja la autenticación?Usamos **Passport.js**, la librería estándar de Node, pero integrada 'a lo NestJS' con Guards y Strategies. Implementaremos Login con JWT (JSON Web Tokens) seguro.
¿Qué son los Guards?Son clases que deciden si una petición puede continuar o no. Los usamos para proteger rutas: 'si el usuario no tiene el rol de Admin, bloquea esta petición'.
¿Qué es un Pipe?Es un filtro que transforma o valida datos. Por ejemplo, el `ParseIntPipe` convierte un string de la URL `'123'` en un número `123` automáticamente antes de que llegue a tu función.
¿Sirve para Microservicios?Sí. NestJS brilla en microservicios. Aunque el curso se enfoca en una API monolítica modular (el paso previo), te da todas las bases para luego dividir tu app en microservicios usando RabbitMQ o Kafka.
¿Vemos Testing?Sí. NestJS viene con Jest configurado. Aprenderemos a escribir pruebas unitarias para tus servicios y pruebas end-to-end (e2e) para tus endpoints.
¿Qué es un Middleware en NestJS?Igual que en Express: funciones que se ejecutan antes de los route handlers. Los usamos para logging, cors o modificar la petición antes de que entre a la lógica de Nest.
¿Qué es Swagger?Es una herramienta para documentar APIs. NestJS tiene un plugin que lee tus decoradores y genera una página web de documentación automática para que el frontend sepa cómo usar tu API.
¿Cómo se manejan los errores?Aprenderás a usar `ExceptionFilters`. En lugar de llenar tu código de `try-catch`, NestJS atrapa los errores y envía respuestas HTTP estandarizadas (ej: 404, 500) al cliente.
¿Por qué grupos de 6 personas?NestJS tiene muchos conceptos abstractos (Módulos, Providers, Scopes). En un grupo chico, podemos diagramar la arquitectura y revisar por qué tu inyección de dependencias está fallando en vivo.
¿Qué es el CLI de Nest?Es una herramienta de línea de comandos potente. Te permite generar módulos, controladores y servicios con un solo comando (`nest g service users`), ahorrando horas de escribir código repetitivo.
¿Qué es un Interceptor?Es una clase que puede modificar la respuesta que envías al cliente. Por ejemplo, puedes usar un interceptor para envolver todas tus respuestas en un objeto `{ data: ... }` automáticamente.
¿Vemos subida de archivos?Sí. NestJS facilita el uso de `Multer` para recibir imágenes o documentos. Veremos cómo subirlos a una carpeta local o a la nube.
¿Se parece a Angular?Muchísimo. NestJS está fuertemente inspirado en Angular (Módulos, Servicios, Inyección). Si vienes de Angular, NestJS te resultará muy familiar y fácil de aprender.
¿Qué es Mongoose?Es el ODM (Object Data Modeling) para MongoDB. Nos permite definir esquemas (Schema) para nuestros documentos, asegurando que la base de datos tenga estructura aunque sea NoSQL.
¿Cómo configuro variables de entorno?Usamos el `@nestjs/config`. Aprenderás a validar que tus variables de entorno (como la URL de la DB) existan y sean correctas antes de arrancar la app.
¿Qué es el Hot Reload?NestJS usa Webpack para reiniciar el servidor rapidísimo cuando cambias código. Configuraremos esto para tener una experiencia de desarrollo fluida.
¿Qué proyecto final hacemos?Una API REST completa, como un sistema de gestión de cursos o un e-commerce, con autenticación, roles, base de datos y quizás una funcionalidad de chat en tiempo real.
¿Vemos Cron Jobs (Tareas programadas)?NestJS tiene un módulo de `Schedule` excelente. Veremos cómo programar tareas para que se ejecuten solas (ej: enviar emails de resumen cada lunes).
¿Qué es Fastify?Es una alternativa a Express mucho más rápida. NestJS permite cambiar Express por Fastify. Usaremos Express por compatibilidad, pero explicaremos cómo hacer el cambio.
¿Cómo se organiza un proyecto grande?Ese es el fuerte del curso. Aprenderás a dividir tu app en Módulos de Dominio (`AuthModule`, `UsersModule`, `OrdersModule`) para que el código no se convierta en espagueti.
¿Vemos GraphQL?Nos enfocamos en **REST**, que sigue siendo el estándar dominante. Sin embargo, la arquitectura de NestJS facilita mucho agregar GraphQL más adelante si lo necesitas.
¿Qué es el 'Request Scope'?Por defecto, los servicios en Nest son Singleton (una sola instancia). Aprenderás cuándo y por qué cambiar esto a Request Scope (una instancia por petición) para casos especiales.
¿Sirve para trabajar en empresas grandes?Sí. NestJS es el estándar de facto para Node.js empresarial hoy en día. Empresas como Adidas, Roche y Trulia lo usan por su robustez.
¿Qué son los Decoradores de Parámetros (`@Body`, `@Query`)?Son la forma de acceder a los datos de la petición. En lugar de `req.body`, usamos `@Body() data: CreateUserDto` para obtener los datos limpios y tipados.
¿Cómo debuggeo NestJS?Te enseñaremos a configurar el debugger de VS Code para poner breakpoints en tu código TypeScript y ver qué está pasando paso a paso.
¿Vemos CORS?Sí. Configuraremos CORS para permitir que tu Frontend (React/Vue/Angular) pueda comunicarse con tu API sin errores de seguridad.
¿Qué es `class-transformer`?Una librería que convierte objetos planos (JSON) en instancias de clases. Es vital para que los métodos de tus entidades funcionen correctamente.
¿Cómo hago deploy?Veremos cómo generar el 'build' de producción (`dist/`) y desplegarlo en plataformas como Railway, Render o un VPS con Docker.
¿Qué es un Provider personalizado?A veces la inyección estándar no alcanza. Aprenderás a crear providers con valores fijos o factorías (useFactory) para configuraciones dinámicas.
¿Vemos relaciones en MongoDB?Sí. Usaremos `populate` de Mongoose para relacionar documentos (ej: un Usuario tiene muchos Posts) y traer los datos combinados.
¿Qué es el patrón Repository?Es una capa que aísla la base de datos. NestJS lo promueve para que tu lógica de negocio no sepa si estás usando Mongo o SQL, haciendo el código más limpio.
¿Es compatible con librerías de Express?Sí. Casi cualquier middleware de Express (como `morgan` o `helmet`) funciona en NestJS. Te enseñaremos a integrarlos.
¿Qué son los 'Lifecycle Events'?Eventos como `onModuleInit`. Te permiten ejecutar código cuando la aplicación arranca (ej: conectar a la DB) o se apaga.
¿Vemos Rate Limiting?Sí. Protegeremos la API contra ataques de fuerza bruta limitando la cantidad de peticiones que un usuario puede hacer por minuto (`ThrottlerModule`).
¿Qué es el 'Circular Dependency'?Un problema común donde el Módulo A depende del B y el B del A. Aprenderás a resolverlo usando `forwardRef`.
¿Vemos Cookies?Sí. Aunque JWT suele ir en Headers, también veremos cómo usar Cookies seguras (HttpOnly) para mayor seguridad en navegadores.
¿Qué es Jest?Es el framework de testing. Nest lo trae pre-configurado. Veremos cómo escribir tests que no rompen cuando cambias la implementación.
¿Cómo versionar la API?NestJS tiene versionado nativo. Aprenderás a tener `/v1/users` y `/v2/users` conviviendo en el mismo proyecto fácilmente.
¿Hay soporte fuera de clase?Sí, tenemos un canal de Discord/Slack donde puedes compartir tus errores y dudas mientras avanzas con el proyecto.
¿Necesito Docker?Es recomendable para la base de datos local. Te enseñaremos a levantar un contenedor de MongoDB con Docker Compose para no ensuciar tu sistema.
¿Qué es el 'Global Scope'?Módulos o Guards que se aplican a toda la app. Veremos cómo registrar validaciones o filtros de error de forma global.
¿Cuál es la salida laboral?Altísima. NestJS es la habilidad más demandada para puestos de Backend Node.js Senior. Saberlo te diferencia de la masa de desarrolladores que solo saben Express básico.
Chateá por info