How nrwl/nx works
Nx is a monorepo orchestration tool for TypeScript and polyglot workspaces. A developer or CI invokes the Nx CLI, which discovers workspace projects, builds a project graph, determines affected tasks, executes them through plugins, and reuses local or Nx Cloud cache results. Supporting branches provide workspace creation and package-manager integration, an interactive task TUI, a project/task graph UI, Angular Rspack SSR wiring, and documentation AI search. The graph combines README capabilities with sampled source; several core orchestration paths are represented at their exact enclosing directories.
Components 23
Core Orchestration
- Nx CLI
packages/nx/src - Project Graph
packages/nx/src - Affected Task Planner
packages/nx/src - Task Runner
packages/nx/src - Local Task Cache
packages/nx/src - Plugin System
packages/nx/src - Task TUI
packages/nx/src/native/tui/app.rs
Workspace Tooling
- Package Manager
packages/nx/src/utils/package-manager.ts - Workspace Creator
packages/create-nx-workspace/src/utils/package-manager.ts - Workspace Rules
packages/js/src/utils/package-manager-workspaces.ts - PNPM Catalog Manager
packages/nx/src/utils/catalog/pnpm-manager.ts
Graph Experiences
- Graph Client
graph/client/src/app/routes.tsx - Graph Data Service
graph/shared/src/lib/project-graph-data-service/get-project-graph-data-service.ts - Project Details
graph/project-details/src/lib/project-details-page.tsx
External Integrations
- Angular Manifest Wiring
- Rspack Manifest Plugin
packages/angular-rspack/src/lib/plugins/engine-manifest-plugin.ts - Nx Cloud
- Cloud Client Updater
packages/nx/src/nx-cloud/update-manager.ts
Documentation Platform
- Docs AI Endpoint
nx-dev/nx-dev/pages/api/query-ai-handler.ts - Documentation Context
nx-dev/nx-dev/lib/getTokenizedContext.ts
Other components
- Developer
- CI Pipeline
- OpenAI Service
Connections 21
- Developer → Nx CLI: invokes
- CI Pipeline → Nx CLI: invokes
- Nx CLI → Project Graph: builds graph
- Nx CLI → Affected Task Planner: plans tasks
- Affected Task Planner → Task Runner: selects tasks
- Task Runner → Local Task Cache: reads cache
- Task Runner → Local Task Cache: writes results
- Task Runner → Plugin System: dispatches plugins
- Plugin System → Package Manager: detects manager
- Nx CLI → Task TUI: opens TUI
- Workspace Creator → Package Manager: configures manager
- Workspace Rules → Package Manager: detects workspaces
- PNPM Catalog Manager → Workspace Rules: updates catalogs
- Graph Client → Graph Data Service: loads graph
- Graph Client → Project Details: loads details
- Cloud Client Updater → Nx Cloud: downloads client
- Task Runner → Nx Cloud: uses remote cache
- Angular Manifest Wiring → Rspack Manifest Plugin: registers manifest
- Rspack Manifest Plugin → Angular Manifest Wiring: installs virtual module
- Docs AI Endpoint → Documentation Context: gets context
- Docs AI Endpoint → OpenAI Service: streams answer