Intro to Nx
Nx is a smart and extensible build framework to help you architect, test, and build at any scale — integrating seamlessly with modern technologies and frameworks while providing a distributed graph-based task execution, computation caching, smart rebuilds of affected projects, powerful code generators, editor support, GitHub apps, and more
Nx helps you develop React applications with fully integrated support for modern tools and libraries like Jest, Cypress, Storybook, ESLint, and more. Nx also supports React frameworks like Gatsby and Next.js.
10-Minute Nx Overview
Philosophy
Nx is built on a technology-agnostic core that maintains modular units of code and understands the dependency graph between them. Developers comprehend that your app contains two pages that each use a shared button component. Nx uses this same knowledge to provide insights and performance improvements. There's a whole ecosystem of plugins that build on this foundation.
Nx becomes more valuable as you scale, solving problems that are frustrating for small teams, but paralyzing for large teams.
Nx works especially well for monorepos. Each new app added to a monorepo provides more opportunities to share code and tooling but that often comes at the cost of a compounding slowdown in the CI pipeline. Nx ensures that adding another app to the repo does not increase the existing app’s test or build time.
Nx Core and Nx Plugins
Nx shares the design philosophy with Visual Studio Code. Code is a powerful text editor, and you can be very productive with it even if you don't install any extensions. The ecosystem of VSCode's extensions though is what can really level up your productivity. Nx is similar. The core of Nx is generic, simple, and unobtrusive. Nx plugins, although very useful for many projects, are completely optional.
Most examples on this site use Nx plugins. It's just easier to demonstrate many features Nx offers when Nx generates all the boilerplate. The vast majority of the features though will work the same way in a workspace with no plugins. Check out Using Nx Core Without Plugins to see where Nx Core ends and Nx Plugins begin.
Features
Best-in-Class Support for Monorepos
- Smart rebuilds of affected projects
- Distributed task execution & computation caching
- Code sharing and ownership management
Integrated Development Experience
Supports Your Ecosystem
- Rich plugin ecosystem from Nrwl and the community
- Consistent dev experience for any framework
- Automatic upgrade to the latest versions of all frameworks and tools