Skip to content

Commit

Permalink
docs(core): fix docs changes for config page
Browse files Browse the repository at this point in the history
  • Loading branch information
AgentEnder authored and vsavkin committed Dec 9, 2021
1 parent 0352f0b commit 7b9975b
Showing 8 changed files with 62 additions and 98 deletions.
22 changes: 10 additions & 12 deletions docs/angular/guides/configuration.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ Many Nx plugins modify these files when generating new code, but you can also mo

## Project Configuration

### workspace.json / angular.json
### workspace json / angular json

`workspace.json` is used in all Nx monorepos, regardless of framework. In repositories created from an existing angular project, the file
may be called `angular.json` instead. To transition, optionally rename the file.
@@ -25,7 +25,7 @@ The `workspace.json` file contains a list of project configurations, as well as
```

- `"version": 2` tells Nx that we are using Nx's format for the `workspace.json` file.
- `projects` is a map of project name to either the project location, or its configuration. (see `project.json`)[(#project-json)]
- `projects` is a map of project name to either the project location, or its configuration. (see [`project.json`](#project-json))

> This file is optional as of Nx v13.3.
> To convert an existing repository to use standalone configurations, run `nx g convert-to-nx-project --all`
@@ -39,7 +39,7 @@ The `workspace.json` file contains a list of project configurations, as well as

> To upgrade to version 2, change the version number to 2 and run `nx format`.
### project.json
### project json

The `project.json` file contains configuration specific to it's project. Lets look at the following example:

@@ -222,7 +222,7 @@ In the following example invoking `nx build myapp` builds all the libraries firs

Often the same `dependsOn` configuration has to be defined for every project in the repo. You can define it once in `nx.json` (see below).

### package.json
### package-json

Nx also infers additional project targets from scripts defined in it's `package.json` file, if it exists. For example, you may have a package.json in the root of your lib like this:

@@ -263,7 +263,7 @@ All of the options except `executor` are availble here.

## Workspace Configuration

### nx.json
### nx json

The `nx.json` file contains extra configuration options mostly related to the project graph.

@@ -304,8 +304,6 @@ The `nx.json` file contains extra configuration options mostly related to the pr
}
```

> Projects utilizing `project.json` files will not be present in `nx.json`.
**NPM Scope**

Tells Nx what prefix to use when generating library imports.
@@ -398,7 +396,7 @@ In the example above:
- Changing `globalFile` only affects `myapp`.
- Changing any CSS file inside the `styles` directory only affects `myapp`.

You can also add dependencies between projects in `workspace.json`. For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.
You can also add dependencies between projects in [project configuration](#project-json). For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.

```jsonc
{
@@ -465,7 +463,7 @@ Default generator options are configured in `nx.json` as well. For instance, the
}
```

## .nxignore
## nxignore

You may optionally add an `.nxignore` file to the root. This file is used to specify files in your workspace that should be completely ignored by Nx.

@@ -514,22 +512,22 @@ This will identify any projects with no files in the configured project root fol

## Recent Changes

### v13.3.0
### v13-3-0

- `workspace.json` is now optional
- projects can be inferred completely from `package.json` if `workspace.json` not present
- Targets are now merged from `package.json` instead of only being used if the project has no targets defined.
- Targets inferred from `package.json` can now have an extended configuration. See [above](#package-json)

### v13.0.0
### v13-0-0

Some settings were moved between `workspace.json`/`project.json` and `nx.json`.

- tags / implicit dependencies are no longer in `nx.json` were moved from `nx.json` to project configuration.
- `cli` and `defaultProject` moved to `nx.json` from `workspace.json`
- Non-project specific generator defaults in `workspace.json` via the `generators`/`schematics` property moved to `nx.json`

### v12.4.0
### v12-4-0

Standalone configuration and `project.json` introduced. See [above](#project-json)

22 changes: 10 additions & 12 deletions docs/node/guides/configuration.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ Many Nx plugins modify these files when generating new code, but you can also mo

## Project Configuration

### workspace.json
### workspace json

The `workspace.json` file contains a list of project configurations, as well as the version of your workspace. Let's look at the following example:

@@ -20,7 +20,7 @@ The `workspace.json` file contains a list of project configurations, as well as
```

- `"version": 2` tells Nx that we are using Nx's format for the `workspace.json` file.
- `projects` is a map of project name to either the project location, or its configuration. (see `project.json`)[(#project-json)]
- `projects` is a map of project name to either the project location, or its configuration. (see [`project.json`](#project-json))

> This file is optional as of Nx v13.3.
> To convert an existing repository to use standalone configurations, run `nx g convert-to-nx-project --all`
@@ -34,7 +34,7 @@ The `workspace.json` file contains a list of project configurations, as well as

> To upgrade to version 2, change the version number to 2 and run `nx format`.
### project.json
### project json

The `project.json` file contains configuration specific to it's project. Lets look at the following example:

@@ -217,7 +217,7 @@ In the following example invoking `nx build myapp` builds all the libraries firs

Often the same `dependsOn` configuration has to be defined for every project in the repo. You can define it once in `nx.json` (see below).

### package.json
### package json

Nx also infers additional project targets from scripts defined in it's `package.json` file, if it exists. For example, you may have a package.json in the root of your lib like this:

@@ -258,7 +258,7 @@ All of the options except `executor` are availble here.

## Workspace Configuration

### nx.json
### nx json

The `nx.json` file contains extra configuration options mostly related to the project graph.

@@ -299,8 +299,6 @@ The `nx.json` file contains extra configuration options mostly related to the pr
}
```

> Projects utilizing `project.json` files will not be present in `nx.json`.
**NPM Scope**

Tells Nx what prefix to use when generating library imports.
@@ -393,7 +391,7 @@ In the example above:
- Changing `globalFile` only affects `myapp`.
- Changing any CSS file inside the `styles` directory only affects `myapp`.

You can also add dependencies between projects in `workspace.json`. For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.
You can also add dependencies between projects in [project configuration](#project-json). For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.

```jsonc
{
@@ -460,7 +458,7 @@ Default generator options are configured in `nx.json` as well. For instance, the
}
```

## .nxignore
## nxignore

You may optionally add an `.nxignore` file to the root. This file is used to specify files in your workspace that should be completely ignored by Nx.

@@ -505,22 +503,22 @@ This will identify any projects with no files in the configured project root fol

## Recent Changes

### v13.3.0
### v13-3-0

- `workspace.json` is now optional
- projects can be inferred completely from `package.json` if `workspace.json` not present
- Targets are now merged from `package.json` instead of only being used if the project has no targets defined.
- Targets inferred from `package.json` can now have an extended configuration. See [above](#package-json)

### v13.0.0
### v13-0-0

Some settings were moved between `workspace.json`/`project.json` and `nx.json`.

- tags / implicit dependencies are no longer in `nx.json` were moved from `nx.json` to project configuration.
- `cli` and `defaultProject` moved to `nx.json` from `workspace.json`
- Non-project specific generator defaults in `workspace.json` via the `generators`/`schematics` property moved to `nx.json`

### v12.4.0
### v12-4-0

Standalone configuration and `project.json` introduced. See [above](#project-json)

22 changes: 10 additions & 12 deletions docs/react/guides/configuration.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ Many Nx plugins modify these files when generating new code, but you can also mo

## Project Configuration

### workspace.json
### workspace json

The `workspace.json` file contains a list of project configurations, as well as the version of your workspace. Let's look at the following example:

@@ -20,7 +20,7 @@ The `workspace.json` file contains a list of project configurations, as well as
```

- `"version": 2` tells Nx that we are using Nx's format for the `workspace.json` file.
- `projects` is a map of project name to either the project location, or its configuration. (see `project.json`)[(#project-json)]
- `projects` is a map of project name to either the project location, or its configuration. (see [`project.json`](#project-json))

> This file is optional as of Nx v13.3.
> To convert an existing repository to use standalone configurations, run `nx g convert-to-nx-project --all`
@@ -34,7 +34,7 @@ The `workspace.json` file contains a list of project configurations, as well as

> To upgrade to version 2, change the version number to 2 and run `nx format`.
### project.json
### project json

The `project.json` file contains configuration specific to it's project. Lets look at the following example:

@@ -217,7 +217,7 @@ In the following example invoking `nx build myapp` builds all the libraries firs

Often the same `dependsOn` configuration has to be defined for every project in the repo. You can define it once in `nx.json` (see below).

### package.json
### package json

Nx also infers additional project targets from scripts defined in it's `package.json` file, if it exists. For example, you may have a package.json in the root of your lib like this:

@@ -258,7 +258,7 @@ All of the options except `executor` are availble here.

## Workspace Configuration

### nx.json
### nx json

The `nx.json` file contains extra configuration options mostly related to the project graph.

@@ -299,8 +299,6 @@ The `nx.json` file contains extra configuration options mostly related to the pr
}
```

> Projects utilizing `project.json` files will not be present in `nx.json`.
**NPM Scope**

Tells Nx what prefix to use when generating library imports.
@@ -393,7 +391,7 @@ In the example above:
- Changing `globalFile` only affects `myapp`.
- Changing any CSS file inside the `styles` directory only affects `myapp`.

You can also add dependencies between projects in `workspace.json`. For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.
You can also add dependencies between projects in [project configuration](#project-json). For instance, the example below defines a dependency from `myapp-e2e` to `myapp`, such that every time `myapp` is affected, `myapp-e2e` is affected as well.

```jsonc
{
@@ -460,7 +458,7 @@ Default generator options are configured in `nx.json` as well. For instance, the
}
```

## .nxignore
## nxignore

You may optionally add an `.nxignore` file to the root. This file is used to specify files in your workspace that should be completely ignored by Nx.

@@ -505,22 +503,22 @@ This will identify any projects with no files in the configured project root fol

## Recent Changes

### v13.3.0
### v13-3-0

- `workspace.json` is now optional
- projects can be inferred completely from `package.json` if `workspace.json` not present
- Targets are now merged from `package.json` instead of only being used if the project has no targets defined.
- Targets inferred from `package.json` can now have an extended configuration. See [above](#package-json)

### v13.0.0
### v13-0-0

Some settings were moved between `workspace.json`/`project.json` and `nx.json`.

- tags / implicit dependencies are no longer in `nx.json` were moved from `nx.json` to project configuration.
- `cli` and `defaultProject` moved to `nx.json` from `workspace.json`
- Non-project specific generator defaults in `workspace.json` via the `generators`/`schematics` property moved to `nx.json`

### v12.4.0
### v12-4-0

Standalone configuration and `project.json` introduced. See [above](#project-json)

14 changes: 1 addition & 13 deletions docs/shared/migration/adding-to-monorepo.md
Original file line number Diff line number Diff line change
@@ -14,7 +14,7 @@ See it in action (3-minute video):
`npx add-nx-to-monorepo` does the following:

1. Add Nx to your package.json.
2. Create `workspace.json` and `nx.json` listing all the projects in the workspace.
2. Create `nx.json`, containing all of the necessary configuration for Nx (see [Configuration](/{{framework}}/core-concepts/configuration#nx-json)).
3. Set up a `tsconfig` file mapping all projects in there.
4. Set up Nx Cloud (if you chose "yes").

@@ -77,18 +77,6 @@ If you want to explore what it feels like to develop with Nx, check out:

The `add-nx-to-monorepo` command does its best to figure out what projects you have in the repo, but you can always update the list yourself.

For instance, you can add/remove/update projects in `workspace.json`.

```json
{
"version": 2,
"projects": {
"one": { "root": "packages/one", "type": "library" },
"two": { "root": "packages/two", "type": "library" }
}
}
```

Nx adds a root tsconfig to your repo with something like this:

```json
Loading

0 comments on commit 7b9975b

Please sign in to comment.