Skip to content
NxDocs

Main navigation

BlogCommunityLaunch NxContact us
Go to app
NxCIExtending NxPluginsAPIChangelogAI Chat
Community channelLatest newsYoutube channelNx is open source, check the code on GitHub
  • Getting Started
    • Intro to Nx
    • Installation
    • Why Nx?
    • Tutorials
      • Package-Based Monorepo
      • Integrated Monorepo
      • React Standalone
      • React Monorepo
      • Angular Standalone
      • Angular Monorepo
      • Vue Standalone
    Features
    • Run Tasks
    • Cache Task Results
    • Explore your Workspace
    • Generate Code
    • Automate Updating Dependencies
    • Enforce Module Boundaries
    • Integrate with Editors
    • Manage Releases
    • CI Features
      • Run Only Tasks Affected by a PR
      • Use Remote Caching (Nx Replay)
      • Distribute Task Execution (Nx Agents)
      • Dynamically Allocate Agents
      • Automatically Split E2E Tasks
      • Identify and Re-run Flaky Tasks
      • Set up Nx Cloud On-Premise
    Concepts
    • Mental Model
    • How Caching Works
    • What is a Task Pipeline
    • What Are Nx Plugins
    • Inferred Tasks
    • Types of Configuration
    • Executors and Configurations
    • Integrated Repos vs. Package-Based Repos vs. Standalone Apps
    • Module Federation
      • Module Federation and Nx
      • Faster Builds with Module Federation
      • Micro Frontend Architecture
      • Manage Library Versions with Module Federation
    • More Concepts
      • Incremental Builds
      • Nx and Turborepo
      • Monorepos
      • Dependency Management
      • Code Sharing
      • Using Nx at Enterprises
      • Nx Daemon
      • Nx and the Angular CLI
      • Folder Structure
      • Nx Devkit and Angular Devkit
      • Applications and Libraries
      • Creating Libraries
      • Library Types
      • Grouping Libraries
      • Buildable and Publishable Libraries
      • How the Project Graph is Built
    Recipes
    • Tasks & Caching
      • Configure Inputs for Task Caching
      • Configure Outputs for Task Caching
      • Define a Task Pipeline
      • Change Cache Location
      • Run Custom Commands
      • Run Tasks in Parallel
      • Run Root-Level NPM Scripts with Nx
      • Workspace Watching
      • Reduce Repetitive Configuration
    • Adopting Nx
      • NPM/Yarn/PNPM workspaces
      • Migrate From Turborepo
      • Add to any Project
      • Preserving Git Histories
      • Manual migration
    • React
      • Migrating from CRA
      • React 18 Migration
      • React Native with Nx
      • Remix with Nx
      • Use Environment Variables in React
      • Using Tailwind CSS in React
      • Adding Images, Fonts, and Files
      • Setup Module Federation with SSR for React
      • Deploying Next.js applications to Vercel
    • Angular
      • Migration
        • Migrating from Angular CLI
        • Migrating From Multiple Angular CLI Repos
        • Migrating Angular Application manually
      • Use Environment Variables in Angular
      • Using Tailwind CSS with Angular projects
      • Setup Module Federation with SSR for Angular
      • Advanced Micro Frontends with Angular using Dynamic Federation
      • Setup incremental builds for Angular applications
    • Node
      • Deploying a Node App to Fly.io
      • Add and Deploy Netlify Edge Functions with Node
      • Deploying AWS lambda in Node.js
      • Set Up Application Proxies
      • Wait for Tasks to Finish
    • Storybook
      • Set up Storybook for React Projects
      • Set up Storybook for Angular Projects
      • Set up Storybook for Vue Projects
      • Configuring Storybook on Nx
      • One main Storybook instance for all projects
      • One Storybook instance per scope
      • One main Storybook instance using Storybook Composition
      • How to configure Webpack and Vite for Storybook
      • Setting up Storybook Interaction Tests with Nx
      • Setting up Storybook Composition with Nx
      • Angular: Set up Compodoc for Storybook on Nx
      • Angular: Configuring styles and preprocessor options
    • Cypress
      • Component Testing
      • Cypress v11 Migration Guide
    • Next
      • How to configure Next.js plugins
    • Nuxt
      • Deploying Nuxt applications to Vercel
    • Vite
      • Configure Vite on your Nx workspace
    • Webpack
      • How to configure Webpack in your Nx workspace
      • Webpack plugins
    • Module Federation
      • How to create a Module Federation Host Application
      • How to create a Module Federation Remote Application
      • How to Federate a Module
    • Enforce Module Boundaries
      • Ban Dependencies with Certain Tags
      • Tag in Multiple Dimensions
      • Ban External Imports
      • Tags Allow List
    • Installation
      • Install Nx in a Non-Javascript Repo
      • Update Your Global Nx Installation
    • Tips and tricks
      • Add a Package-based Project in an Integrated Repo
      • Add an Integrated Project in a Package-based Repo
      • Convert from a Standalone Repository to an Integrated Repository
      • Configuring ESLint with Typescript
      • Enable Typescript Batch Mode
      • Define Secondary Entrypoints for Typescript Packages
      • Compile Typescript Packages to Multiple Formats
      • Keep Nx Versions in Sync
      • Define Environment Variables
      • Configuring Browser Support
      • Include Assets in Build
      • Include All package.json Files as Projects
      • Identify Dependencies Between Folders
      • Disable Graph Links Created from Analyzing Source Files
      • Use JavaScript instead TypeScript
      • Altering Migration Process
      • Using Yarn PnP
      • Switching to ESLint's flat config format
    • Troubleshooting
      • Resolve Circular Dependencies
      • Troubleshooting Nx Install Issues
      • Troubleshoot Cache Misses
      • Unknown Local Cache Error
      • Profiling Build Performance
    • Nx Console
      • Telemetry
      • Project Details View
      • Generate Command
      • Run Command
      • Add Dependency Command
      • Project Pane
      • Keyboard Shortcuts
      • Troubleshooting
    • Nx Release
      • Get Started with Nx Release
      • Release Projects Independently
      • Automatically Version with Conventional Commits
      • Publish in CI/CD
      • Automate GitHub Releases
    • Other
      • Rescope Packages from @nrwl to @nx
    Showcase
    • Nx with your favorite tech
      • Add an Express Project
      • Add a Lit Project
      • Add a Solid Project
      • Add a Qwik Project
      • Add a Rust Project
      • Add a .NET Project
      • Add an Astro Project
      • Add a Svelte Project
      • Add a Fastify Project
      • Using Apollo GraphQL
      • Using Prisma with NestJS
      • Using Mongo with Fastify
      • Using Redis with Fastify
      • Using Postgres with Fastify
      • Using PlanetScale with Serverless Fastify
      • Nx Micro-Frontend Example
    • Benchmarks
      • Typescript Batch Mode Compilation
      • Large Repo and Caching
      • Large Repo and DTE
    Reference
    • Commands
    • Nx Configuration
    • Project Configuration
    • Inputs and Named Inputs
    • .nxignore
    • Environment Variables
    • Glossary
  1. see also
  2. sitemap
  • Nx

    • Getting Started
      • Intro to Nx
      • Installation
      • Why Nx?
      • Tutorials
        • Package-Based Monorepo
        • Integrated Monorepo
        • React Standalone
        • React Monorepo
        • Angular Standalone
        • Angular Monorepo
        • Vue Standalone
    • Core Tutorial
      • 1 - Create Blog
      • 2 - Create CLI
      • 3 - Share Assets
      • 4 - Build Affected Projects
      • 5 - Automatically Detect Dependencies
      • 6 - Summary
    • Features
      • Run Tasks
      • Cache Task Results
      • Explore your Workspace
      • Generate Code
      • Automate Updating Dependencies
      • Enforce Module Boundaries
      • Integrate with Editors
      • Manage Releases
      • CI Features
    • Concepts
      • Mental Model
      • How Caching Works
      • What is a Task Pipeline
      • What Are Nx Plugins
      • Inferred Tasks
      • Types of Configuration
      • Executors and Configurations
      • Integrated Repos vs. Package-Based Repos vs. Standalone Apps
      • Module Federation
        • Module Federation and Nx
        • Faster Builds with Module Federation
        • Micro Frontend Architecture
        • Manage Library Versions with Module Federation
      • More Concepts
        • Incremental Builds
        • Nx and Turborepo
        • Monorepos
        • Dependency Management
        • Code Sharing
        • Using Nx at Enterprises
        • Nx Daemon
        • Nx and the Angular CLI
        • Folder Structure
        • Nx Devkit and Angular Devkit
        • Applications and Libraries
        • Creating Libraries
        • Library Types
        • Grouping Libraries
        • Buildable and Publishable Libraries
        • How the Project Graph is Built
    • Recipes
      • Tasks & Caching
        • Configure Inputs for Task Caching
        • Configure Outputs for Task Caching
        • Define a Task Pipeline
        • Change Cache Location
        • Run Custom Commands
        • Run Tasks in Parallel
        • Run Root-Level NPM Scripts with Nx
        • Workspace Watching
        • Reduce Repetitive Configuration
      • Adopting Nx
        • NPM/Yarn/PNPM workspaces
        • Migrate From Turborepo
        • Add to any Project
        • Preserving Git Histories
        • Manual migration
      • React
        • Migrating from CRA
        • React 18 Migration
        • React Native with Nx
        • Remix with Nx
        • Use Environment Variables in React
        • Using Tailwind CSS in React
        • Adding Images, Fonts, and Files
        • Setup Module Federation with SSR for React
        • Deploying Next.js applications to Vercel
      • Angular
        • Migration
          • Migrating from Angular CLI
          • Migrating From Multiple Angular CLI Repos
          • Migrating Angular Application manually
        • Use Environment Variables in Angular
        • Using Tailwind CSS with Angular projects
        • Setup Module Federation with SSR for Angular
        • Advanced Micro Frontends with Angular using Dynamic Federation
        • Setup incremental builds for Angular applications
      • Node
        • Deploying a Node App to Fly.io
        • Add and Deploy Netlify Edge Functions with Node
        • Deploying AWS lambda in Node.js
        • Set Up Application Proxies
        • Wait for Tasks to Finish
      • Storybook
        • Set up Storybook for React Projects
        • Set up Storybook for Angular Projects
        • Set up Storybook for Vue Projects
        • Configuring Storybook on Nx
        • One main Storybook instance for all projects
        • One Storybook instance per scope
        • One main Storybook instance using Storybook Composition
        • How to configure Webpack and Vite for Storybook
        • Setting up Storybook Interaction Tests with Nx
        • Setting up Storybook Composition with Nx
        • Angular: Set up Compodoc for Storybook on Nx
        • Angular: Configuring styles and preprocessor options
      • Cypress
        • Component Testing
        • Cypress v11 Migration Guide
      • Next
        • How to configure Next.js plugins
      • Nuxt
        • Deploying Nuxt applications to Vercel
      • Vite
        • Configure Vite on your Nx workspace
      • Webpack
        • How to configure Webpack in your Nx workspace
        • Webpack plugins
      • Module Federation
        • How to create a Module Federation Host Application
        • How to create a Module Federation Remote Application
        • How to Federate a Module
      • Enforce Module Boundaries
        • Ban Dependencies with Certain Tags
        • Tag in Multiple Dimensions
        • Ban External Imports
        • Tags Allow List
      • Installation
        • Install Nx in a Non-Javascript Repo
        • Update Your Global Nx Installation
      • Tips and tricks
        • Add a Package-based Project in an Integrated Repo
        • Add an Integrated Project in a Package-based Repo
        • Convert from a Standalone Repository to an Integrated Repository
        • Configuring ESLint with Typescript
        • Enable Typescript Batch Mode
        • Define Secondary Entrypoints for Typescript Packages
        • Compile Typescript Packages to Multiple Formats
        • Keep Nx Versions in Sync
        • Define Environment Variables
        • Configuring Browser Support
        • Include Assets in Build
        • Include All package.json Files as Projects
        • Identify Dependencies Between Folders
        • Disable Graph Links Created from Analyzing Source Files
        • Use JavaScript instead TypeScript
        • Altering Migration Process
        • Using Yarn PnP
        • Switching to ESLint's flat config format
      • Troubleshooting
        • Resolve Circular Dependencies
        • Troubleshooting Nx Install Issues
        • Troubleshoot Cache Misses
        • Unknown Local Cache Error
        • Profiling Build Performance
      • Nx Console
        • Telemetry
        • Project Details View
        • Generate Command
        • Run Command
        • Add Dependency Command
        • Project Pane
        • Keyboard Shortcuts
        • Troubleshooting
      • Nx Release
        • Get Started with Nx Release
        • Release Projects Independently
        • Automatically Version with Conventional Commits
        • Publish in CI/CD
        • Automate GitHub Releases
      • Other
        • Rescope Packages from @nrwl to @nx
    • Showcase
      • Nx with your favorite tech
        • Add an Express Project
        • Add a Lit Project
        • Add a Solid Project
        • Add a Qwik Project
        • Add a Rust Project
        • Add a .NET Project
        • Add an Astro Project
        • Add a Svelte Project
        • Add a Fastify Project
        • Using Apollo GraphQL
        • Using Prisma with NestJS
        • Using Mongo with Fastify
        • Using Redis with Fastify
        • Using Postgres with Fastify
        • Using PlanetScale with Serverless Fastify
        • Nx Micro-Frontend Example
      • Benchmarks
        • Typescript Batch Mode Compilation
        • Large Repo and Caching
        • Large Repo and DTE
    • Reference
      • Nx Configuration
      • Project Configuration
      • Inputs and Named Inputs
      • .nxignore
      • Environment Variables
      • Glossary
    • Deprecated
      • workspace.json
      • workspace-lint
      • As Provided vs. Derived
      • Workspace Generators
      • Workspace Executors
      • defaultCollection
      • runtimeCacheInputs
      • cacheableOperations
      • npmScope
      • globalImplicitDependencies
      • Angular Schematics and Builders
      • Storybook deprecated docs
        • Angular: Information about the Storybook targets
        • Angular - The projectBuildConfig
        • Angular: Storybook Migration to webpackFinal
        • Angular: Upgrading to Storybook 6
        • React: Storybook Migration to webpackFinal and the Nx Addon
        • React: Upgrading to Storybook 6
      • v1 Nx Plugin API
    • See Also
      • Site Map
  • Extending-nx

    • Intro
      • Getting Started with Plugins
    • 5 Min Tutorials
      • Create a Local Plugin
      • Maintain a Published Plugin
    • Recipes
      • Write a Simple Executor
      • Compose Executors
      • Write a Simple Generator
      • Compose Generators
      • Provide Options for Generators
      • Create Files
      • Modify Files
      • Write a Migration
      • Create a Preset
      • Create an Install Package
      • Modify the Project Graph
  • Ci

    • Intro
      • CI with Nx
      • Tutorials
        • Circle CI with Nx
        • GitHub Actions with Nx
    • Features
      • Run Only Tasks Affected by a PR
      • Use Remote Caching (Nx Replay)
      • Distribute Task Execution (Nx Agents)
      • Dynamically Allocate Agents
      • Automatically Split E2E Tasks (TestAtomizer)
      • Identify and Re-run Flaky Tasks
      • Set up Nx Cloud On-Premise
    • Concepts
      • The Building Blocks of Fast CI
      • Reduce Wasted Time in CI
      • Parallelization and Distribution
      • Cache Security
    • Recipes
      • Set Up CI
        • Connect Nx Cloud
        • Setting up Azure Pipelines
        • Setting up CircleCI
        • Setting up GitHub Actions
        • Setting up Jenkins
        • Setting up GitLab
        • Setting up Bitbucket
      • Security
        • Authenticate with Google Identity
        • Access Tokens
        • Enable End to End Encryption
      • Source Control Integration
        • Enable GitHub PR Integration
        • Enable Bitbucket Cloud PR Integration
        • Enable GitLab MR Integration
      • On-Premise
        • Authenticate with a Single Admin
        • Authenticate with GitHub
        • On-Prem VM Setup
        • Authenticate with GitLab
        • Authenticate with BitBucket
        • Authenticate via SAML
        • Authenticate via SAML on Managed Version
        • Advanced Configuration
      • Troubleshooting
        • CI Execution Failed
      • Other
        • Record Non-Nx Commands
        • Prepare applications for deployment via CI
    • Reference
      • Configuration Options
      • nx-cloud CLI
      • Launch Templates
      • Environment Variables
      • Server API Reference
      • Release Notes
  • Nx-api

    • angular
      • documents
        • Overview
        • Angular and Nx Version Matrix
      • executors
        • delegate-build
        • ng-packagr-lite
        • package
        • browser-esbuild
        • module-federation-dev-server
        • application
        • extract-i18n
        • webpack-browser
        • dev-server
        • webpack-server
        • module-federation-dev-ssr
      • generators
        • add-linting
        • application
        • component
        • component-cypress-spec
        • component-story
        • component-test
        • convert-to-application-executor
        • directive
        • federate-module
        • init
        • library
        • library-secondary-entry-point
        • remote
        • move
        • convert-to-with-mf
        • host
        • ng-add
        • ngrx
        • ngrx-feature-store
        • ngrx-root-store
        • pipe
        • scam-to-standalone
        • scam
        • scam-directive
        • scam-pipe
        • setup-mf
        • setup-ssr
        • setup-tailwind
        • stories
        • storybook-configuration
        • cypress-component-configuration
        • web-worker
    • create-nx-plugin
    • create-nx-workspace
    • cypress
      • documents
        • Overview
      • executors
        • cypress
      • generators
        • init
        • cypress-project
        • configuration
        • component-configuration
        • migrate-to-cypress-11
    • detox
      • documents
        • Overview
      • executors
        • build
        • test
      • generators
        • init
        • application
    • devkit
      • documents
        • Overview
        • Ng CLI Adapter
    • esbuild
      • documents
        • Overview
      • executors
        • esbuild
      • generators
        • init
        • configuration
    • eslint
      • documents
        • Overview
      • executors
        • lint
      • generators
        • init
        • workspace-rules-project
        • workspace-rule
        • convert-to-flat-config
    • eslint-plugin
      • documents
        • Overview
        • The enforce-module-boundaries rule
        • The dependency-checks rule
    • expo
      • documents
        • Overview
      • executors
        • update
        • build
        • build-list
        • run
        • start
        • sync-deps
        • ensure-symlink
        • prebuild
        • install
        • export
        • submit
        • serve
      • generators
        • init
        • application
        • library
        • component
    • express
      • documents
        • Overview
      • generators
        • init
        • application
    • jest
      • documents
        • Overview
      • executors
        • jest
      • generators
        • init
        • configuration
    • js
      • documents
        • Overview
      • executors
        • tsc
        • swc
        • node
        • release-publish
        • verdaccio
      • generators
        • library
        • init
        • convert-to-swc
        • release-version
        • setup-verdaccio
        • setup-build
    • nest
      • documents
        • Overview
      • generators
        • application
        • init
        • library
        • class
        • controller
        • decorator
        • filter
        • gateway
        • guard
        • interceptor
        • interface
        • middleware
        • module
        • pipe
        • provider
        • resolver
        • resource
        • service
    • next
      • documents
        • Overview
      • executors
        • build
        • server
        • export
      • generators
        • init
        • application
        • page
        • component
        • library
        • custom-server
        • cypress-component-configuration
    • node
      • documents
        • Overview
      • generators
        • init
        • application
        • library
        • setup-docker
    • nuxt
      • documents
        • Overview of the Nx Nuxt Plugin
      • generators
        • init
        • application
        • storybook-configuration
    • nx
      • documents
        • create-nx-workspace
        • init
        • generate
        • run
        • daemon
        • graph
        • run-many
        • affected
        • affected:graph
        • print-affected
        • format:check
        • format:write
        • migrate
        • report
        • list
        • connect-to-nx-cloud
        • reset
        • repair
        • exec
        • watch
        • show
        • view-logs
        • release
        • add
      • executors
        • noop
        • run-commands
        • run-script
      • generators
        • connect-to-nx-cloud
    • playwright
      • documents
        • Overview
      • executors
        • playwright
      • generators
        • configuration
        • init
    • plugin
      • documents
        • Overview
      • executors
        • e2e
      • generators
        • plugin
        • create-package
        • e2e-project
        • migration
        • generator
        • executor
        • plugin-lint-checks
        • preset
    • react
      • documents
        • Overview
      • executors
        • module-federation-dev-server
        • module-federation-ssr-dev-server
      • generators
        • init
        • application
        • library
        • component
        • redux
        • storybook-configuration
        • component-story
        • stories
        • component-cypress-spec
        • hook
        • host
        • remote
        • cypress-component-configuration
        • component-test
        • setup-tailwind
        • setup-ssr
        • federate-module
    • react-native
      • documents
        • Overview
      • executors
        • run-android
        • run-ios
        • bundle
        • build-android
        • build-ios
        • start
        • sync-deps
        • ensure-symlink
        • storybook
        • pod-install
        • upgrade
      • generators
        • init
        • application
        • library
        • component
        • storybook-configuration
        • component-story
        • stories
        • upgrade-native
        • web-configuration
    • remix
      • documents
        • Overview
      • executors
        • serve
        • build
      • generators
        • preset
        • setup
        • application
        • cypress-component-configuration
        • library
        • init
        • route
        • resource-route
        • action
        • loader
        • style
        • setup-tailwind
        • storybook-configuration
        • meta
        • error-boundary
    • rollup
      • executors
        • rollup
      • generators
        • init
        • configuration
    • storybook
      • documents
        • Nx Storybook Plugin Overview
        • Storybook best practices for making the most out of Nx
        • Storybook 7 overview
      • executors
        • storybook
        • build
      • generators
        • init
        • configuration
        • cypress-project
        • migrate-7
    • tao
    • vite
      • documents
        • Overview of the Nx Vite Plugin
      • executors
        • dev-server
        • build
        • test
        • preview-server
      • generators
        • init
        • configuration
        • vitest
    • vue
      • documents
        • Overview of the Nx Vue Plugin
      • generators
        • init
        • application
        • library
        • component
        • setup-tailwind
        • storybook-configuration
        • stories
    • web
      • documents
        • Overview
      • executors
        • file-server
      • generators
        • init
        • application
        • static-config
    • webpack
      • documents
        • Overview of the Nx Webpack Plugin
      • executors
        • webpack
        • dev-server
        • ssr-dev-server
      • generators
        • init
        • configuration
    • workspace
      • documents
        • Overview
        • Nx, NodeJS and Typescript Versions
      • executors
        • counter
      • generators
        • preset
        • move
        • remove
        • convert-to-monorepo
        • new
        • run-commands
        • fix-configuration
        • npm-package
        • ci-workflow
On this page
21.4kGive us a Star!
Report an issueEdit this page

Footer

Nx

Smart Monorepos ยท Fast CI

DiscordGitHubXYoutubeNewsletter

Resources

  • Blog
  • Youtube Channel
  • Nx Playbook
  • Brands & Guidelines
  • Site Map

Help

  • Documentation
  • Community
  • StackOverflow
  • Report Issues
  • Status Page

Community

  • X
  • GitHub
  • Newsletter
  • Discord
  • Help Us

Solutions

  • Nx
  • Nx Cloud

ยฉ 2024 made with by