Skip to content

Commit 437bad4

Browse files
committed
docs(misc): add description frontmatter for better SEO
1 parent d428eec commit 437bad4

File tree

234 files changed

+1200
-51
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

234 files changed

+1200
-51
lines changed

docs/generated/packages/angular/documents/angular-nx-version-matrix.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx and Angular Versions
3+
description: A comprehensive compatibility matrix showing which Nx versions work with different Angular versions, including recommended versions and supported ranges.
4+
---
5+
16
# Nx and Angular Versions
27

38
The latest version of Nx supports the [actively supported versions of Angular (current and LTS versions)](https://angular.dev/reference/releases#actively-supported-versions). Workspaces in any of those versions are recommended to use the latest version of Nx to benefit from all the new features and fixes.

docs/generated/packages/angular/documents/nx-and-angular.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx and the Angular CLI
3+
description: Compare Nx and Angular CLI features, understand similarities and differences, and learn how Nx enhances Angular development with improved caching, monorepo support, and advanced tooling.
4+
---
5+
16
# Nx and the Angular CLI
27

38
{% youtube

docs/generated/packages/angular/documents/nx-devkit-angular-devkit.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx Devkit and Angular Devkit
3+
description: Compare Nx Devkit and Angular Devkit for creating generators and executors, understand key differences in implementation, and learn how to convert between the two approaches.
4+
---
5+
16
# Nx Devkit and Angular Devkit
27

38
{% callout type="note" title="Nx & Angular" %}

docs/generated/packages/detox/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Detox Plugin for Nx
3+
description: Learn how to set up and use Detox for end-to-end testing of mobile applications in your Nx workspace, including environment setup and configuration options.
4+
---
5+
16
Detox is gray box end-to-end testing and automation library for mobile apps. It has a lot of great features:
27

38
- Cross Platform

docs/generated/packages/eslint-plugin/documents/dependency-checks.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Dependency Checks ESLint Rule
3+
description: Learn how to use the @nx/dependency-checks ESLint rule to identify mismatches between dependencies in package.json and actual project dependencies.
4+
---
5+
16
# Dependency Checks rule
27

38
The `@nx/dependency-checks` ESLint rule enables you to discover mismatches between dependencies specified in a project's `package.json` and the dependencies that your project depends on. If your project is using, for example, the `axios`, but the `package.json` does not specify it as a dependency, your library might not work correctly. This rule helps catch these problems before your users do.

docs/generated/packages/eslint-plugin/documents/enforce-module-boundaries.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Enforce Module Boundaries ESLint Rule
3+
description: Learn how to use the @nx/enforce-module-boundaries ESLint rule to define strict rules for accessing resources between different projects in your Nx workspace.
4+
---
5+
16
# Enforce module boundaries rule
27

38
The `@nx/enforce-module-boundaries` ESLint rule enables you to define strict rules for accessing resources between

docs/generated/packages/eslint-plugin/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx ESLint Plugin
3+
description: An overview of the @nx/eslint-plugin package, which provides recommended ESLint configurations and Nx-specific rules for enforcing module boundaries and dependency checks.
4+
---
5+
16
The `@nx/eslint-plugin` package is an ESLint plugin that contains a collection of recommended ESLint rule configurations which you can extend from in your own ESLint configs, as well as the following Nx-specific ESLint rules:
27

38
- [enforce-module-boundaries](#enforce-module-boundaries-rule)

docs/generated/packages/eslint/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: ESLint Plugin for Nx
3+
description: Learn how to set up and use the @nx/eslint plugin to integrate ESLint with Nx, enabling caching and providing code generators for ESLint configuration.
4+
---
5+
16
The ESLint plugin integrates [ESLint](https://eslint.org/) with Nx. It allows you to run ESLint through Nx with caching enabled. It also includes code generators to help you set up ESLint in your workspace.
27

38
## Setting Up @nx/eslint

docs/generated/packages/expo/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Expo Plugin for Nx
3+
description: Learn how to use the @nx/expo plugin to manage Expo applications and libraries within an Nx workspace, including setup, configuration, and task inference.
4+
---
5+
16
Expo is an open-source framework for apps that run natively on Android, iOS, and the web. Expo brings together the best of mobile and the web and enables many important features for building and scaling an app.
27

38
Expo is a set of tools built on top of React Native. The Nx Plugin for Expo contains generators for managing Expo applications and libraries within an Nx workspace.

docs/generated/packages/express/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Express Plugin for Nx
3+
description: Learn how to use the @nx/express plugin to create and manage Express applications in your Nx workspace, including setup and common recipes.
4+
---
5+
16
[Express](https://expressjs.com/) is a mature, minimal, and an open source web framework for making web applications and
27
apis.
38

docs/generated/packages/nest/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nest.js Plugin for Nx
3+
description: Learn how to use the @nx/nest plugin to create and manage Nest.js applications and libraries in your Nx workspace, including setup and generators.
4+
---
5+
16
Nest.js is a framework designed for building scalable server-side applications. In many ways, Nest is familiar to Angular developers:
27

38
- It has excellent TypeScript support.

docs/generated/packages/node/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Node.js Plugin for Nx
3+
description: Learn how to use the @nx/node plugin to create and manage Node.js applications and libraries in your Nx workspace, including setup, building, and testing.
4+
---
5+
16
The Node Plugin contains generators and executors to manage Node applications within an Nx workspace. It provides:
27

38
## Setting Up @nx/node

docs/generated/packages/plugin/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx Plugin Development
3+
description: Learn about the @nx/plugin package, which provides tooling to help create and maintain Nx plugins with generators and executors.
4+
---
5+
16
Nx plugins are npm packages that contain [generators](/features/generate-code) and [executors](/concepts/executors-and-configurations) to extend a Nx workspace.
27

38
This package contains tooling to help plugin authors create and maintain plugins.

docs/generated/packages/react/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: React Plugin for Nx
3+
description: Learn how to use the @nx/react plugin to create and manage React applications and libraries in your Nx workspace, including components, hooks, and more.
4+
---
5+
16
The React plugin contains executors and generators for managing React applications and libraries within an Nx workspace.
27
It provides:
38

docs/generated/packages/web/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Web Plugin for Nx
3+
description: Learn how to use the @nx/web plugin to create and manage Web Component applications and libraries in your Nx workspace, including testing and building.
4+
---
5+
16
The Nx Plugin for Web Components contains generators for managing Web Component applications and libraries within an Nx workspace. It provides:
27

38
- Integration with libraries such as Jest, Cypress, and Storybook.

docs/generated/packages/workspace/documents/nx-nodejs-typescript-version-matrix.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx, NodeJS and TypeScript Compatibility Matrix
3+
description: A reference table showing which versions of Node.js and TypeScript are compatible with different major versions of Nx.
4+
---
5+
16
# Nx, NodeJS and TypeScript Compatibility Matrix
27

38
Below is a reference table that matches versions the latest major versions of Nx to the version TypeScript that it uses

docs/generated/packages/workspace/documents/overview.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Workspace Plugin for Nx
3+
description: Learn about the core workspace plugin that provides essential executors and generators for any Nx workspace, including tools for project management.
4+
---
5+
16
The workspace plugin contains executors and generators that are useful for any Nx workspace. It should be present in every Nx workspace and other plugins build on it.
27

38
## Creating Local Generators

docs/shared/concepts/buildable-and-publishable-libraries.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Publishable and Buildable Nx Libraries
3+
description: Learn about buildable and publishable libraries in Nx, when to use them, and how they adjust your project configuration for distribution.
4+
---
5+
16
# Publishable and Buildable Nx Libraries
27

38
The `--buildable` and `--publishable` options are available on the Nx library generators for the following plugins:
@@ -13,23 +18,23 @@ This document will look to explain the motivations for why you would use either
1318

1419
You might use the `--publishable` option when generating a new Nx library if your intention is to distribute it outside the monorepo.
1520

16-
One typical scenario for this may be that you use Nx to develop your organizations UI design system component library (maybe using its Storybook integration), which should be available also to your organizations apps that are not hosted within the same monorepo.
21+
One typical scenario for this may be that you use Nx to develop your organizations UI design system component library (maybe using its Storybook integration), which should be available also to your organizations' apps that are not hosted within the same monorepo.
1722

18-
A normal Nx library - lets call it "workspace library" - is not made for building or publishing. Rather it only includes common lint and test targets in its `project.json` file. These libraries are directly referenced from one of the monorepos applications and built together with them.
23+
A normal Nx library - let's call it "workspace library" - is not made for building or publishing. Rather it only includes common lint and test targets in its `project.json` file. These libraries are directly referenced from one of the monorepo's applications and built together with them.
1924

2025
Keep in mind that the `--publishable` flag does not enable automatic publishing. Rather it adds to your Nx workspace library a builder target that **compiles** and **bundles** your app. The resulting artifact will be ready to be published to some registry (e.g. [npm](https://npmjs.com/)). By having that builder, you can invoke the build via a command like: `nx build mylib` (where "mylib" is the name of the lib) which will then produce an optimized bundle in the `dist/mylib` folder.
2126

2227
One particularity when generating a library with `--publishable` is that it requires you to also provide an `--importPath`. Your import path is the actual scope of your distributable package (e.g.: `@myorg/mylib`) - which needs to be a [valid npm package name](https://docs.npmjs.com/files/package.json#name).
2328

24-
To publish the library (for example to npm) you can run the CLI command: `npm publish` from the artifact located in the `dist` directory. Setting up some automated script in Nxs `tools` folder may also come in handy.
29+
To publish the library (for example to npm) you can run the CLI command: `npm publish` from the artifact located in the `dist` directory. Setting up some automated script in Nx's `tools` folder may also come in handy.
2530

2631
For more details on the mechanics, remember that Nx is an open source project, so you can see the actual impact of the generator by looking at the source code (the best starting point is probably `packages/<framework>/src/generators/library/library.ts`).
2732

2833
## Buildable libraries
2934

3035
Buildable libraries are similar to "publishable libraries" described above. Their scope however is not to distribute or publish them to some external registry. Thus they might not be optimized for bundling and distribution.
3136

32-
Buildable libraries are mostly used for producing some pre-compiled output that can be directly referenced from an Nx workspace application without the need to again compile it. A typical scenario is to leverage Nxs incremental building capabilities.
37+
Buildable libraries are mostly used for producing some pre-compiled output that can be directly referenced from an Nx workspace application without the need to again compile it. A typical scenario is to leverage Nx's incremental building capabilities.
3338

3439
{% callout type="warning" title="More details" %}
3540
In order for a buildable library to be pre-compiled, it can only depend on other buildable libraries. This allows you to take full advantage of incremental builds.

docs/shared/concepts/common-tasks.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
---
2+
title: Common Tasks
3+
description: Learn about standard task naming conventions in Nx projects, including build, serve, test, and lint tasks, for consistent project configuration.
24
keywords: [build, serve, test, lint]
35
---
46

docs/shared/concepts/daemon.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Nx Daemon
3+
description: Learn about the Nx Daemon, a background process that speeds up project graph computation in large workspaces by maintaining state between commands.
4+
---
5+
16
# Nx Daemon
27

38
In version 13 we introduced the opt-in Nx Daemon which Nx can leverage to dramatically speed up project graph computation, particularly for large workspaces.

docs/shared/concepts/decisions/code-ownership.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Code Ownership
3+
description: Learn about code ownership challenges in monorepos and how Nx helps manage shared code with tools like CODEOWNERS and module boundary rules.
4+
---
5+
16
# Code Ownership
27

38
One of the most obvious benefits of having a monorepo is that you can easily share code across projects. This enables you to apply the Don't Repeat Yourself principle across the whole codebase. Code sharing could mean using a function or a component in multiple projects. Or code sharing could mean using a typescript interface to define the network API interface for both the front end and back end applications.

docs/shared/concepts/decisions/dependency-management.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Dependency Management Strategies
3+
description: Compare independently maintained dependencies versus single version policy approaches for monorepos, with guidance on choosing the right strategy for your team.
4+
---
5+
16
# Dependency Management Strategies
27

38
When working with a monorepo, one of the key architectural decisions is how to manage dependencies across your projects. This document outlines two main strategies and helps you choose the right approach for your team.

docs/shared/concepts/decisions/folder-structure.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Folder Structure
3+
description: Learn about organizing your Nx monorepo with effective folder structures, and how to easily move or remove projects as your organization evolves.
4+
---
5+
16
# Folder Structure
27

38
Nx can work with any folder structure you choose, but it is good to have a plan in place for the folder structure of your monorepo.
@@ -51,7 +56,7 @@ libs/
5156

5257
One of the main advantages of using a monorepo is that there is more visibility into code that can be reused across many different applications. Shared projects are a great way to save developers time and effort by reusing a solution to a common problem.
5358

54-
Lets consider our reference monorepo. The `shared-data-access` project contains the code needed to communicate with the back-end (for example, the URL prefix). We know that this would be the same for all libs; therefore, we should place this in the shared lib and properly document it so that all projects can use it instead of writing their own versions.
59+
Let's consider our reference monorepo. The `shared-data-access` project contains the code needed to communicate with the back-end (for example, the URL prefix). We know that this would be the same for all libs; therefore, we should place this in the shared lib and properly document it so that all projects can use it instead of writing their own versions.
5560

5661
```text
5762
libs/

docs/shared/concepts/decisions/monorepo-polyrepo.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Monorepo or Polyrepo
3+
description: Evaluate the organizational considerations for choosing between monorepo and polyrepo approaches, including team agreements on code management and workflows.
4+
---
5+
16
# Monorepo or Polyrepo
27

38
Monorepos have a lot of benefits, but there are also some costs involved. We feel strongly that the [technical challenges](/concepts/decisions/why-monorepos) involved in maintaining large monorepos are fully addressed through the efficient use of Nx and Nx Cloud. Rather, the limiting factors in how large your monorepo grows are interpersonal.

docs/shared/concepts/decisions/monorepos.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Monorepos
3+
description: Understand the benefits of monorepos including shared code, atomic changes, developer mobility, and consistent dependencies across your organization.
4+
---
5+
16
# Monorepos
27

38
A monorepo is a single git repository that holds the source code for multiple applications and libraries, along with the tooling for them.
@@ -8,7 +13,7 @@ A monorepo is a single git repository that holds the source code for multiple ap
813

914
- **Atomic changes** - Change a server API and modify the downstream applications that consume that API in the same commit. You can change a button component in a shared library and the applications that use that component in the same commit. A monorepo saves the pain of trying to coordinate commits across multiple repositories.
1015

11-
- **Developer mobility** - Get a consistent way of building and testing applications written using different tools and technologies. Developers can confidently contribute to other teams applications and verify that their changes are safe.
16+
- **Developer mobility** - Get a consistent way of building and testing applications written using different tools and technologies. Developers can confidently contribute to other teams' applications and verify that their changes are safe.
1217

1318
- **Single set of dependencies** - [Use a single version of all third-party dependencies](/concepts/decisions/dependency-management), reducing inconsistencies between applications. Less actively developed applications are still kept up-to-date with the latest version of a framework, library, or build tool.
1419

@@ -34,7 +39,7 @@ Nx provides tools to give you the benefits of a monorepo without the drawbacks o
3439

3540
- **Consistent Code Generation** - Generators allow you to customize and standardize organizational conventions and structure, removing the need to perform the same manual setup tasks repetitively.
3641

37-
- **Affected Commands** - [Nxs affected commands](/nx-api/nx/documents/affected) analyze your source code, the context of the changes, and only runs tasks on the affected projects impacted by the source code changes.
42+
- **Affected Commands** - [Nx's affected commands](/nx-api/nx/documents/affected) analyze your source code, the context of the changes, and only runs tasks on the affected projects impacted by the source code changes.
3843

3944
- **Remote Caching** - Nx provides local caching and support for remote caching of command executions. With remote caching, when someone on your team runs a command, everyone else gets access to those artifacts to speed up their command executions, bringing them down from minutes to seconds. Nx helps you scale your development to massive applications and libraries even more with distributed task execution and incremental builds.
4045

docs/shared/concepts/decisions/project-dependency-rules.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Project Dependency Rules
3+
description: Learn how to organize your Nx workspace with library types like feature, UI, data-access, and utility libraries, and enforce dependency rules between them.
4+
---
5+
16
# Project Dependency Rules
27

38
There are many types of libraries in a workspace. You can identify the type of a library through a naming convention and/or by using the project tagging system. With explicitly defined types, you can also use Nx to enforce project dependency rules based on the types of each project. This article explains one possible way to organize your repository projects by type. Every repository is different and yours may need a different set of types.

docs/shared/concepts/decisions/project-size.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Project Size
3+
description: Understand the trade-offs of project granularity in Nx, including benefits like faster commands, clearer boundaries, and improved developer experience.
4+
---
5+
16
# Project Size
27

38
Like a lot of decisions in programming, deciding to make a new Nx project or not is all about trade-offs. Each organization will decide on their own conventions, but here are some trade-offs to bear in mind as you have the conversation.

docs/shared/concepts/executors-and-configurations.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: Executors and Configurations
3+
description: Learn about Nx executors, pre-packaged node scripts that run tasks consistently across projects, and how to configure them in project.json files.
4+
---
5+
16
# Executors and Configurations
27

38
Executors are pre-packaged node scripts that can be used to run tasks in a consistent way.

0 commit comments

Comments
 (0)