Contenido del curso
0:00/12:51
Monorepo con Nx para Angular y Node
01:41Monorepo con Nx: ventajas y cuándo usarlo
Suscríbete para ver másInstalación de entorno de desarrollo para Angular y Nx
Suscríbete para ver másCreación de workspace Nx con GitHub y Nx Cloud
Suscríbete para ver másConfiguración básica del workspace de Nx con Angular
Suscríbete para ver másCreación de aplicaciones Angular en monorepo Nx
Suscríbete para ver másLibrerías compartidas en Nx: Angular y TypeScript para múltiples apps
Suscríbete para ver másIntegración de Node.js en monorepos con Nx
Suscríbete para ver másComponentes compartidos en monorepo Angular
Suscríbete para ver másTrabajar con Nx en un monorepo no solo te da caché inteligente y velocidad en building, testing y linting. También te entrega una configuración lista de GitHub Actions que automatiza validaciones en cada push o pull request, y te permite escalar hacia despliegues, notificaciones y publicaciones de paquetes.
Por qué el caché de Nx acelera tu flujo de trabajo
La primera vez que ejecutas un comando con Nx, el proceso tarda lo que tarda. La segunda vez, la diferencia es brutal porque entra el caché.
En la demo en vivo, una construcción tomó 40 segundos la primera vez y bajó a 2 segundos al repetirla [03:15]. Ese mismo comportamiento se repite con serve, test y lint, lo que cambia por completo el ritmo de desarrollo cuando trabajas con varias apps y librerías dentro del mismo repositorio.
¿Qué es el caché de Nx? Es un mecanismo que guarda el resultado de tareas como build, test o lint y las reutiliza si el código no cambió, evitando reejecutarlas desde cero.
A esto se suma Nx Console, la extensión que centraliza la manipulación del monorepo desde el editor y reduce la fricción de recordar comandos.
Qué hace el archivo ci.yaml que genera Nx
Cuando Nx inicializa el proyecto, crea un archivo ci.yaml dentro de .github/workflows. Ese archivo define la action que GitHub ejecuta automáticamente bajo ciertas condiciones.
En la pestaña Actions del repositorio aparece con el mismo name declarado en el YAML, y cada vez que se dispara verás su historial de ejecuciones [05:40].
Cuándo se disparan los triggers de una GitHub Action
El bloque on define los disparadores. En el ejemplo del curso se configuraron tres escenarios típicos en empresas:
master, donde suele correr la validación principal.features/**, útil para validar nuevas funcionalidades.hotfix/**, pensado para correcciones urgentes.Además, mencionó dos disparadores muy usados en producción: el tagging con git tag y versiones tipo 0.1.0, y la ejecución programada con cron para correr chequeos en horarios específicos [08:20].
Qué jobs ejecuta el workflow paso a paso
Una vez disparado, el workflow define permissions en modo lectura y arranca los jobs. La secuencia básica que arma Nx es:
npm ci, que omite devDependencies e instala solo lo necesario para producción.nx run-many para correr en paralelo lint, test y build sobre todos los proyectos afectados.El uso de npm ci en vez de npm install es clave: garantiza una instalación limpia y reproducible basada en el package-lock.json.
Cómo leer los resultados de una GitHub Action que falla
Mirar el historial del repositorio cuenta una historia. Las primeras actions del curso pasaron en verde porque solo había código base. Cuando se sumaron UI Shared, el server, las apps Angular y los primeros tests, los linters y los tests empezaron a fallar [11:05].
Al agregar los tests unitarios, esa parte se estabilizó pero los linters seguían marcando rojo por constructores vacíos y malas prácticas. Una vez corregido el código, el run-many terminó con 12 tareas exitosas y 0 fallidas, muchas de ellas servidas desde el caché de Nx.
¿Para qué sirve nx run-many en CI? Ejecuta una misma tarea, como lint o test, sobre múltiples proyectos del monorepo en paralelo, y aprovecha el caché para saltar lo que no cambió.
Ese es el valor real: el pipeline te muestra en qué commit exacto se rompió algo, qué proyecto lo causó y si el problema vive en el linter, en los tests o en el build.
Qué otras automatizaciones puedes sumar a tu pipeline
El ci.yaml que genera Nx es una base. A partir de ahí, los usos populares de GitHub Actions amplían el alcance del monorepo hacia despliegue y operaciones.
Cada una de estas integraciones requiere configuración propia (secrets, tokens, permisos), pero el punto de entrada siempre es el mismo archivo YAML que ya tienes en .github/workflows.
Cómo ver una GitHub Action ejecutándose en tiempo real
El flujo para validar tu pipeline es directo y se hizo en vivo durante la clase [16:30]:
git add . seguido de git commit -m "clase GitHub Actions parte 2".git push a la branch master.Esa retroalimentación inmediata, sumada al caché de Nx y a la estructura monorepo con Angular en el frontend y Node.js en el backend, cierra el círculo: un solo repositorio, validaciones automáticas y la libertad de sumar despliegues cuando los necesites.
¿Qué automatización vas a configurar primero en tu monorepo? Cuéntalo en los comentarios.
David Victoria
Jeffery Alexander Vásquez Loayza
Alejandro José Hugo Escalante Santos
Moisés Barrera
Este curso ha sido super productivo, el profe es super bueno explicando y al grano, no le da tantas vueltas al asunto, si estas usando react en vez de angular, la cosa no cambia mucho.
Aquí la documentación, espero les ayude.
Saludos!!
este curso me ha servido para actualizar monorepo, genial, muchas gracias!!!
Excelente curso.
Muy buen curso , será bastante útil