Nx
Resumen
Nx es un sistema de compilación para monorepos. Proporciona almacenamiento en caché de resultados (local + remoto), orquestación de tareas, grafo de dependencias, generadores de código y comandos de afectados (affected). Funciona con React, Angular, Node.js, Next.js y cualquier lenguaje.
Instrucciones
Paso 1: Crear el Workspace
npx create-nx-workspace@latest mi-org --preset=ts
cd mi-org
Paso 2: Añadir Proyectos
nx g @nx/react:app mi-app
nx g @nx/js:lib shared-utils
nx g @nx/node:app api
Paso 3: Ejecutar Tareas
nx serve mi-app
nx build api
nx test shared-utils
nx affected -t test # solo lo que cambió
nx run-many -t build test # todo
Paso 4: Configuración de nx.json
// nx.json — Configuración del Workspace
{
"targetDefaults": {
"build": { "dependsOn": ["^build"], "cache": true },
"test": { "cache": true },
"lint": { "cache": true }
}
}
Directrices
- Nx almacena en caché los resultados de las tareas: la segunda ejecución es instantánea si las entradas no han cambiado.
- Utiliza
nx affecteden CI para solo compilar/probar lo que cambió en un PR. - Nx Cloud proporciona almacenamiento en caché remoto: comparte la caché entre el equipo y la CI.
- Nx también funciona sin plugins; puedes añadirlo a cualquier repositorio con
npx nx init.