Temario del Curso de Backend con Express y MongoDB
En este curso de backend vas a aprender a construir APIs profesionales desde cero usando el stack clásico de Node.js: Express para el servidor HTTP, MongoDB/Mongoose para la base de datos, Passport + JWT para autenticación y Socket.IO para tiempo real. No es un curso teórico: vas a armar rutas, controladores, modelos, middlewares y sockets sobre un proyecto único que evoluciona clase a clase hasta quedar listo para producción. Todo en grupos reducidos de máximo 6 personas, con práctica intensiva, feedback de código y acompañamiento cercano.
Introducción a Express y configuración del servidor
Repaso rápido de Node.js y modelo de ejecución
Instalación de Express y setup inicial del proyecto
Arquitectura MVC básica y estructura de carpetas para una API REST
Configuración del servidor, middlewares iniciales y variables de entorno
Rutas, controladores y middlewares en Express
Creación de rutas organizadas por recurso
Uso de controladores para separar lógica de negocio
Middlewares de validación, logging y manejo de errores
Convenciones para nombres de rutas y respuestas JSON consistentes
Conexión a MongoDB con Mongoose
Instalación y conexión a MongoDB (local/Atlas)
Definición de esquemas y modelos con Mongoose
Tipos, validaciones básicas y relaciones simples
Buenas prácticas para estructurar datos en colecciones
Operaciones CRUD con Express y Mongoose
Creación, lectura, actualización y eliminación de documentos
Validaciones de Mongoose y manejo de errores de base de datos
Respuestas con status codes correctos y mensajes claros
Paginación, filtros simples y ordenamientos básicos
Autenticación con Passport: registro y login
Configuración de Passport en Express
Estrategia local para registro y login de usuarios
Hash de contraseñas, sesiones y manejo de errores de autenticación
Buenas prácticas para manejo de credenciales
Autenticación con Passport y JWT
Configuración de JWT en Express
Generación, firma y verificación de tokens
Protección de rutas privadas mediante middlewares
Renovación de tokens y manejo de expiraciones
Autorización y roles de usuario
Diseño de un sistema de roles: admin, user, editor u otros
Restricción de accesos con middlewares de autorización
Control de permisos por recurso/acción
Buenas prácticas de seguridad y protección de datos sensibles
Comunicación en tiempo real con Socket.IO
Configuración de Socket.IO sobre un servidor Express
Eventos en tiempo real (chat, notificaciones, presencia)
Manejo de conexiones, salas y desconexiones
Patrones básicos para sincronizar datos entre API REST y sockets
Integración de Express, Mongoose, Passport, JWT y Socket.IO
Unificación de base de datos, autenticación, roles y tiempo real
Estructura modular del proyecto orientada a dominio
Manejo centralizado de errores y logs
Consideraciones de seguridad (CORS, rate limiting básico, sanitización)
Proyecto Final: API completa lista para producción
Integración final de CRUD, roles de usuario y sockets en un mismo proyecto
Autenticación JWT + Passport aplicada a flujos reales
Checklist de producción: variables de entorno, scripts de arranque, logs
Preparación para deploy en servicios de hosting para Node.js
¿Necesito saber Frontend para tomar este curso?⌄
No es necesario saber Frontend (React, HTML, CSS), pero sí es vital que manejes JavaScript (ES6+). Probaremos nuestra API con herramientas como Postman o Insomnia, no con una interfaz gráfica.¿Por qué enseñan Express y no NestJS?⌄
Express es la base de todo el ecosistema Node.js. Aprender Express te enseña cómo funciona HTTP 'a bajo nivel' (req, res, next), lo cual es fundamental antes de pasar a frameworks opinados como NestJS.¿Qué es MongoDB y por qué no usamos SQL?⌄
MongoDB es una base de datos NoSQL basada en documentos JSON. Es ideal para aprender Backend con JavaScript porque usamos el mismo formato de datos (JSON) en todo el stack (Fullstack JS).¿Qué es Socket.IO?⌄
Es una librería que permite comunicación bidireccional en tiempo real entre el cliente y el servidor. Es la tecnología detrás de los chats, notificaciones en vivo y juegos multijugador.¿Qué es un Middleware?⌄
Es una función que tiene acceso a la petición (Request) y a la respuesta (Response). Los usamos para tareas como verificar si el usuario está logueado, validar datos o registrar errores.¿Vemos autenticación segura?⌄
Sí. Aprenderás a implementar registro y login, hashear contraseñas (para no guardarlas en texto plano) y generar Tokens JWT para mantener la sesión del usuario.¿Qué es Mongoose?⌄
Es una herramienta (ODM) que nos ayuda a interactuar con MongoDB de forma estructurada. Nos permite definir 'Modelos' (ej: Usuario, Producto) y validar los datos antes de guardarlos.¿Qué es MVC?⌄
Modelo-Vista-Controlador. Es el patrón de arquitectura que usaremos para organizar nuestro código: Modelos (Datos), Controladores (Lógica) y Rutas (Endpoints).¿Para qué sirve Passport.js?⌄
Es un middleware de autenticación para Node.js. Simplifica mucho el proceso de login, ya sea local (email/password) o con redes sociales (Google, GitHub), aunque en este curso nos enfocamos en la estrategia local y JWT.¿Vemos subida de archivos?⌄
Sí, aprenderás a usar `Multer` para recibir imágenes o documentos que el usuario sube y guardarlos en el servidor o en la nube.