docs(core): remove standalone tutorials (#30125)

Remove standalone tutorials
This commit is contained in:
Isaac Mann 2025-02-20 15:47:04 -05:00 committed by GitHub
parent 639d748b70
commit a90de969ab
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
33 changed files with 42 additions and 4145 deletions

View File

@ -19,9 +19,7 @@ While speed is of major importance, developer ergonomics shouldn't be left behin
## Update (Aug 2023): Want a non-monorepo setup? ## Update (Aug 2023): Want a non-monorepo setup?
This article walks you through how to setup a new Nx monorepo workspace with React. If you rather prefer starting with a single-project setup (also named "standalone") then you might want to have a look at this tutorial (including video): This article walks you through how to setup a new Nx monorepo workspace with React. If you rather prefer starting with a single-project setup (also named "standalone") then you might want to have a look at the standalone tutorial (including video).
[/getting-started/tutorials/react-standalone-tutorial](/getting-started/tutorials/react-standalone-tutorial)
## Why use a devtool CLI? ## Why use a devtool CLI?

View File

@ -181,7 +181,6 @@ It is an ongoing process, and we have a lot of content to cover! We follow the [
Besides the two new [package-based](/getting-started/tutorials/typescript-packages-tutorial) and [integrated style tutorials](/getting-started/tutorials/react-monorepo-tutorial) we also have two brand new reworked tutorials Besides the two new [package-based](/getting-started/tutorials/typescript-packages-tutorial) and [integrated style tutorials](/getting-started/tutorials/react-monorepo-tutorial) we also have two brand new reworked tutorials
- [/getting-started/tutorials/react-standalone-tutorial](/getting-started/tutorials/react-standalone-tutorial)
- [/getting-started/tutorials](/getting-started/tutorials) - [/getting-started/tutorials](/getting-started/tutorials)
Stay tuned for more updates to come. Stay tuned for more updates to come.

View File

@ -39,7 +39,7 @@ And so did also [Fireship](https://youtu.be/2OTq15A5s0Y) and ultimately [Dan Abr
Code generators speed up such configuration tasks. They are valuable for scaffolding the initial project structure and adding new features to the app setup, such as Tailwind. Code generators speed up such configuration tasks. They are valuable for scaffolding the initial project structure and adding new features to the app setup, such as Tailwind.
Nx has such generators. To use them, you need an Nx-based React setup. If you're starting new, you can create an [Nx Standalone React project](/getting-started/tutorials/react-standalone-tutorial) easily using the following command Nx has such generators. To use them, you need an Nx-based React setup. If you're starting new, you can create an Nx Standalone React project easily using the following command
```shell ```shell
$ npx create-nx-workspace reactapp --preset=react-standalone $ npx create-nx-workspace reactapp --preset=react-standalone
@ -59,7 +59,7 @@ You can pass `--vite=false` if you still want to keep the Webpack configuration
## Generating a Tailwind Setup ## Generating a Tailwind Setup
Once you have a [Nx-based React](/getting-started/tutorials/react-standalone-tutorial) setup, adding Tailwind is as easy as running: Once you have a [Nx-based React](/getting-started/tutorials/react-monorepo-tutorial) setup, adding Tailwind is as easy as running:
```shell ```shell
$ npx nx g @nrwl/react:setup-tailwind $ npx nx g @nrwl/react:setup-tailwind
@ -79,7 +79,6 @@ You'll get
You should be all setup and ready now! Here are some related resources to explore: You should be all setup and ready now! Here are some related resources to explore:
- [Nx docs: React Standalone tutorial](/getting-started/tutorials/react-standalone-tutorial)
- [Nx docs: React Monorepo tutorial](/getting-started/tutorials/react-monorepo-tutorial) - [Nx docs: React Monorepo tutorial](/getting-started/tutorials/react-monorepo-tutorial)
- [Youtube: Is CRA Dead](https://youtu.be/fkTz6KJxhhE) - [Youtube: Is CRA Dead](https://youtu.be/fkTz6KJxhhE)
- [Nx docs: Migrate CRA to React and Vite](/recipes/adopting-nx/adding-to-existing-project) - [Nx docs: Migrate CRA to React and Vite](/recipes/adopting-nx/adding-to-existing-project)

View File

@ -636,7 +636,7 @@ This should give you a good insight into how to get started. But there's more to
- We could also include "[executors](/extending-nx/recipes/local-executors)", which are wrappers around tasks to abstract the lower-level details of it - We could also include "[executors](/extending-nx/recipes/local-executors)", which are wrappers around tasks to abstract the lower-level details of it
- etc. - etc.
Now clearly this was a simple example of how you could build your own CRA using Nx. If you want to see a real-world React setup powered by Nx, check out our React Tutorial: [/getting-started/tutorials/react-standalone-tutorial](/getting-started/tutorials/react-standalone-tutorial) Now clearly this was a simple example of how you could build your own CRA using Nx. If you want to see a real-world React setup powered by Nx, check out our React Tutorial: [/getting-started/tutorials/react-monorepo-tutorial](/getting-started/tutorials/react-monorepo-tutorial)
## Learn more ## Learn more

View File

@ -54,8 +54,6 @@ And you'll have access to Nx generators so that you can generate Vue application
We're very excited for this support to land, and we're eager to get it into our user's hands and see what Nx can do to help Vue developers so we can continue to refine our support and make Vue with Nx an excellent developer experience. We're very excited for this support to land, and we're eager to get it into our user's hands and see what Nx can do to help Vue developers so we can continue to refine our support and make Vue with Nx an excellent developer experience.
If you're eager to learn more, make sure to check out our new [Vue standalone tutorial](/getting-started/tutorials/vue-standalone-tutorial).
## Enhancements to Module Federation Support ## Enhancements to Module Federation Support
Nx already had great support for Module Federation — Nx 17 improves on this support: Nx already had great support for Module Federation — Nx 17 improves on this support:
@ -236,7 +234,7 @@ For more [checkout our API docs](/nx-api/nx/documents/release), and be sure to c
At Nx, we're OBSESSED with building a better, more robust experience for our developers. Towards this end, we're now in [v2 of our Project Inference API](/extending-nx/recipes/project-graph-plugins). At Nx, we're OBSESSED with building a better, more robust experience for our developers. Towards this end, we're now in [v2 of our Project Inference API](/extending-nx/recipes/project-graph-plugins).
This API is a way of extending the Nx project graph, which can be particularly helpful for extending Nx to support other languages, allowing Nx to determine where to find and draw boundaries around projects in your workspace. A great example is our very own [Vue plugin](/getting-started/tutorials/vue-standalone-tutorial). This API is a way of extending the Nx project graph, which can be particularly helpful for extending Nx to support other languages, allowing Nx to determine where to find and draw boundaries around projects in your workspace. A great example is our very own [Vue plugin](/nx-api/vue).
Interestingly, v2 includes support for dynamic targets as well. This opens up exciting new doors to reducing configuration, and we hope to expand on this to better support our first-party plugins in the near future. Interestingly, v2 includes support for dynamic targets as well. This opens up exciting new doors to reducing configuration, and we hope to expand on this to better support our first-party plugins in the near future.

View File

@ -220,7 +220,7 @@ And you'll then have access to Nx generators so you can create Vue applications,
![](/blog/images/2023-12-28/bodyimg6.gif) ![](/blog/images/2023-12-28/bodyimg6.gif)
Checkout out our [Vue standalone tutorial](/getting-started/tutorials/vue-standalone-tutorial) for more, as well as our [Vue API docs](/nx-api/vue), and stay tuned as Nx prepares to offer more Vue support (including support for [Nuxt](https://nuxt.com/), a full-stack framework built around Vue) in the near future! Checkout out our [Vue API docs](/nx-api/vue), and stay tuned as Nx prepares to offer more Vue support (including support for [Nuxt](https://nuxt.com/), a full-stack framework built around Vue) in the near future!
### Extending Nx: Local Generators, Build your Own CLI, Verdaccio Support ### Extending Nx: Local Generators, Build your Own CLI, Verdaccio Support

View File

@ -54,14 +54,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "React Standalone",
"path": "/getting-started/tutorials/react-standalone-tutorial",
"id": "react-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "React Monorepo", "name": "React Monorepo",
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
@ -70,14 +62,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Angular Standalone",
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"id": "angular-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Angular Monorepo", "name": "Angular Monorepo",
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
@ -86,14 +70,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Vue Standalone",
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"id": "vue-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
"path": "/getting-started/tutorials/gradle-tutorial", "path": "/getting-started/tutorials/gradle-tutorial",
@ -154,14 +130,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "React Standalone",
"path": "/getting-started/tutorials/react-standalone-tutorial",
"id": "react-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "React Monorepo", "name": "React Monorepo",
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
@ -170,14 +138,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Angular Standalone",
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"id": "angular-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Angular Monorepo", "name": "Angular Monorepo",
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
@ -186,14 +146,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Vue Standalone",
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"id": "vue-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
"path": "/getting-started/tutorials/gradle-tutorial", "path": "/getting-started/tutorials/gradle-tutorial",
@ -213,14 +165,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "React Standalone",
"path": "/getting-started/tutorials/react-standalone-tutorial",
"id": "react-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "React Monorepo", "name": "React Monorepo",
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
@ -229,14 +173,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Angular Standalone",
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"id": "angular-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Angular Monorepo", "name": "Angular Monorepo",
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
@ -245,14 +181,6 @@
"children": [], "children": [],
"disableCollapsible": false "disableCollapsible": false
}, },
{
"name": "Vue Standalone",
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"id": "vue-standalone-tutorial",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{ {
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
"path": "/getting-started/tutorials/gradle-tutorial", "path": "/getting-started/tutorials/gradle-tutorial",

View File

@ -68,17 +68,6 @@
"path": "/getting-started/tutorials/typescript-packages-tutorial", "path": "/getting-started/tutorials/typescript-packages-tutorial",
"tags": [] "tags": []
}, },
{
"id": "react-standalone-tutorial",
"name": "React Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/react-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/react-standalone-tutorial",
"tags": []
},
{ {
"id": "react-monorepo-tutorial", "id": "react-monorepo-tutorial",
"name": "React Monorepo", "name": "React Monorepo",
@ -90,17 +79,6 @@
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
"tags": [] "tags": []
}, },
{
"id": "angular-standalone-tutorial",
"name": "Angular Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/angular-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"tags": []
},
{ {
"id": "angular-monorepo-tutorial", "id": "angular-monorepo-tutorial",
"name": "Angular Monorepo", "name": "Angular Monorepo",
@ -112,17 +90,6 @@
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
"tags": [] "tags": []
}, },
{
"id": "vue-standalone-tutorial",
"name": "Vue Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/vue-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"tags": []
},
{ {
"id": "gradle-tutorial", "id": "gradle-tutorial",
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
@ -206,17 +173,6 @@
"path": "/getting-started/tutorials/typescript-packages-tutorial", "path": "/getting-started/tutorials/typescript-packages-tutorial",
"tags": [] "tags": []
}, },
{
"id": "react-standalone-tutorial",
"name": "React Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/react-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/react-standalone-tutorial",
"tags": []
},
{ {
"id": "react-monorepo-tutorial", "id": "react-monorepo-tutorial",
"name": "React Monorepo", "name": "React Monorepo",
@ -228,17 +184,6 @@
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
"tags": [] "tags": []
}, },
{
"id": "angular-standalone-tutorial",
"name": "Angular Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/angular-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"tags": []
},
{ {
"id": "angular-monorepo-tutorial", "id": "angular-monorepo-tutorial",
"name": "Angular Monorepo", "name": "Angular Monorepo",
@ -250,17 +195,6 @@
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
"tags": [] "tags": []
}, },
{
"id": "vue-standalone-tutorial",
"name": "Vue Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/vue-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"tags": []
},
{ {
"id": "gradle-tutorial", "id": "gradle-tutorial",
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
@ -288,17 +222,6 @@
"path": "/getting-started/tutorials/typescript-packages-tutorial", "path": "/getting-started/tutorials/typescript-packages-tutorial",
"tags": [] "tags": []
}, },
"/getting-started/tutorials/react-standalone-tutorial": {
"id": "react-standalone-tutorial",
"name": "React Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/react-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/react-standalone-tutorial",
"tags": []
},
"/getting-started/tutorials/react-monorepo-tutorial": { "/getting-started/tutorials/react-monorepo-tutorial": {
"id": "react-monorepo-tutorial", "id": "react-monorepo-tutorial",
"name": "React Monorepo", "name": "React Monorepo",
@ -310,17 +233,6 @@
"path": "/getting-started/tutorials/react-monorepo-tutorial", "path": "/getting-started/tutorials/react-monorepo-tutorial",
"tags": [] "tags": []
}, },
"/getting-started/tutorials/angular-standalone-tutorial": {
"id": "angular-standalone-tutorial",
"name": "Angular Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/angular-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/angular-standalone-tutorial",
"tags": []
},
"/getting-started/tutorials/angular-monorepo-tutorial": { "/getting-started/tutorials/angular-monorepo-tutorial": {
"id": "angular-monorepo-tutorial", "id": "angular-monorepo-tutorial",
"name": "Angular Monorepo", "name": "Angular Monorepo",
@ -332,17 +244,6 @@
"path": "/getting-started/tutorials/angular-monorepo-tutorial", "path": "/getting-started/tutorials/angular-monorepo-tutorial",
"tags": [] "tags": []
}, },
"/getting-started/tutorials/vue-standalone-tutorial": {
"id": "vue-standalone-tutorial",
"name": "Vue Standalone",
"description": "",
"mediaImage": "",
"file": "shared/tutorials/vue-standalone",
"itemList": [],
"isExternal": false,
"path": "/getting-started/tutorials/vue-standalone-tutorial",
"tags": []
},
"/getting-started/tutorials/gradle-tutorial": { "/getting-started/tutorials/gradle-tutorial": {
"id": "gradle-tutorial", "id": "gradle-tutorial",
"name": "Gradle Monorepo", "name": "Gradle Monorepo",

View File

@ -35,7 +35,7 @@ Here's a quick side-by-side overview comparing the features between the Angular
| Executors | ✅ (Builders) | ✅ | | Executors | ✅ (Builders) | ✅ |
| Advanced Generators (e.g. Module Federation, Tailwind,...) | ❌ | ✅ | | Advanced Generators (e.g. Module Federation, Tailwind,...) | ❌ | ✅ |
| Integrated Tooling (Jest, Cypress, Playwright etc.) | ❌ | ✅ | | Integrated Tooling (Jest, Cypress, Playwright etc.) | ❌ | ✅ |
| Support for [single-project Workspaces](/getting-started/tutorials/angular-standalone-tutorial) | ✅ | ✅ | | Support for single-project Workspaces | ✅ | ✅ |
| First-Class [Monorepo Support](/getting-started/tutorials/angular-monorepo-tutorial) | ❌\* | ✅ | | First-Class [Monorepo Support](/getting-started/tutorials/angular-monorepo-tutorial) | ❌\* | ✅ |
| [Enforced Module Boundaries](/features/enforce-module-boundaries) | ❌ | ✅ | | [Enforced Module Boundaries](/features/enforce-module-boundaries) | ❌ | ✅ |
| Interactive [Project Graph](/features/explore-graph) | ❌ | ✅ | | Interactive [Project Graph](/features/explore-graph) | ❌ | ✅ |
@ -67,8 +67,6 @@ Nx is not just exclusively for monorepos, but can create
- a single-project workspace (basically what the Angular CLI gives you) - a single-project workspace (basically what the Angular CLI gives you)
- a monorepo workspace (multiple projects in a single repo) - a monorepo workspace (multiple projects in a single repo)
You can check out the [Angular single-project workspace tutorial](/getting-started/tutorials/angular-standalone-tutorial) to learn more about it.
### Generate a new project ### Generate a new project
You can create a new Nx single-project workspace using the following command: You can create a new Nx single-project workspace using the following command:
@ -270,7 +268,7 @@ Nx goes beyond being just a CLI and comes with [Nx Console](/getting-started/edi
Nx is really made to scale with you. You can Nx is really made to scale with you. You can
- start small with a single-project workspace - start small with a single-project workspace
- modularize your application into more fine-grained libraries for better maintainability as your application (and team) grows ([more about that here](/getting-started/tutorials/angular-standalone-tutorial#modularizing-your-angular-app-with-local-libraries)), including mechanisms to make sure [things stay within their boundaries](/features/enforce-module-boundaries) - modularize your application into more fine-grained libraries for better maintainability as your application (and team) grows, including mechanisms to make sure [things stay within their boundaries](/features/enforce-module-boundaries)
- you can then migrate to a monorepo when you are ready and need one ([more here](/recipes/tips-n-tricks/standalone-to-monorepo)) - you can then migrate to a monorepo when you are ready and need one ([more here](/recipes/tips-n-tricks/standalone-to-monorepo))
- or even [add Webpack Module Federation support](/recipes/angular/module-federation-with-ssr) - or even [add Webpack Module Federation support](/recipes/angular/module-federation-with-ssr)
@ -408,5 +406,4 @@ There is also a guide describing how to [consolidate multiple Angular CLI projec
You can learn more about Angular & Nx by following our dedicated tutorials: You can learn more about Angular & Nx by following our dedicated tutorials:
- [Tutorial: Building Angular Apps with the Nx Standalone Projects Setup](/getting-started/tutorials/angular-standalone-tutorial)
- [Tutorial: Building Angular Apps in an Nx Monorepo](/getting-started/tutorials/angular-monorepo-tutorial) - [Tutorial: Building Angular Apps in an Nx Monorepo](/getting-started/tutorials/angular-monorepo-tutorial)

View File

@ -59,8 +59,8 @@ npm add -D @nx/angular
{% /tab %} {% /tab %}
{% /tabs %} {% /tabs %}
{% callout type="note" title="Angular Tutorials" %} {% callout type="note" title="Angular Tutorial" %}
For a full tutorial experience, follow the [Angular Standalone Tutorial](/getting-started/tutorials/angular-standalone-tutorial) or the [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial) For a full tutorial experience, follow the [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial)
{% /callout %} {% /callout %}
## Using the Angular Plugin ## Using the Angular Plugin
@ -127,7 +127,6 @@ nx g @nx/angular:service apps/appName/src/lib/my-service/my-service
## More Documentation ## More Documentation
- [Angular Standalone Tutorial](/getting-started/tutorials/angular-standalone-tutorial)
- [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial) - [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial)
- [Migrating from the Angular CLI](/recipes/angular/migration/angular) - [Migrating from the Angular CLI](/recipes/angular/migration/angular)
- [Setup Module Federation with Angular and Nx](/concepts/module-federation/faster-builds-with-module-federation) - [Setup Module Federation with Angular and Nx](/concepts/module-federation/faster-builds-with-module-federation)

View File

@ -12,8 +12,8 @@ It provides:
To create a new workspace with React, run `npx create-nx-workspace@latest --preset=react-standalone`. To create a new workspace with React, run `npx create-nx-workspace@latest --preset=react-standalone`.
{% callout type="note" title="React Tutorials" %} {% callout type="note" title="React Tutorial" %}
For a full tutorial experience, follow the [React Standalone Tutorial](/getting-started/tutorials/react-standalone-tutorial) or the [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial) For a full tutorial experience, follow the [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial)
{% /callout %} {% /callout %}
### Installation ### Installation
@ -144,7 +144,6 @@ The library in `dist` is publishable to npm or a private registry.
## More Documentation ## More Documentation
- [React Standalone Tutorial](/getting-started/tutorials/react-standalone-tutorial)
- [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial) - [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial)
- [Using Cypress](/nx-api/cypress) - [Using Cypress](/nx-api/cypress)
- [Using Jest](/nx-api/jest) - [Using Jest](/nx-api/jest)

View File

@ -11,10 +11,6 @@ The Nx plugin for [Vue](https://vuejs.org/).
To create a new workspace with Vue, run `npx create-nx-workspace@latest --preset=vue`. To create a new workspace with Vue, run `npx create-nx-workspace@latest --preset=vue`.
{% callout type="note" title="Vue Standalone Tutorial" %}
For a full tutorial experience, follow the [Vue Standalone Tutorial](/getting-started/tutorials/vue-standalone-tutorial)
{% /callout %}
### Installation ### Installation
{% callout type="note" title="Keep Nx Package Versions In Sync" %} {% callout type="note" title="Keep Nx Package Versions In Sync" %}
@ -59,7 +55,3 @@ To generate a Vue library, run the following:
```shell ```shell
nx g @nx/vue:lib libs/my-lib nx g @nx/vue:lib libs/my-lib
``` ```
## More Documentation
- [Vue Standalone Tutorial](/getting-started/tutorials/vue-standalone-tutorial)

View File

@ -45,31 +45,16 @@
"id": "typescript-packages-tutorial", "id": "typescript-packages-tutorial",
"file": "shared/tutorials/typescript-packages" "file": "shared/tutorials/typescript-packages"
}, },
{
"name": "React Standalone",
"id": "react-standalone-tutorial",
"file": "shared/tutorials/react-standalone"
},
{ {
"name": "React Monorepo", "name": "React Monorepo",
"id": "react-monorepo-tutorial", "id": "react-monorepo-tutorial",
"file": "shared/tutorials/react-monorepo" "file": "shared/tutorials/react-monorepo"
}, },
{
"name": "Angular Standalone",
"id": "angular-standalone-tutorial",
"file": "shared/tutorials/angular-standalone"
},
{ {
"name": "Angular Monorepo", "name": "Angular Monorepo",
"id": "angular-monorepo-tutorial", "id": "angular-monorepo-tutorial",
"file": "shared/tutorials/angular-monorepo" "file": "shared/tutorials/angular-monorepo"
}, },
{
"name": "Vue Standalone",
"id": "vue-standalone-tutorial",
"file": "shared/tutorials/vue-standalone"
},
{ {
"name": "Gradle Monorepo", "name": "Gradle Monorepo",
"id": "gradle-tutorial", "id": "gradle-tutorial",

View File

@ -64,8 +64,6 @@ Someone whose main focus is on improving their single application will be most i
{% cards %} {% cards %}
{% card title="Standalone Applications with Nx" description="Learn what Standlone Apps are and how Nx can be useful" type="video" url="https://youtu.be/qEaVzh-oBBc" /%} {% card title="Standalone Applications with Nx" description="Learn what Standlone Apps are and how Nx can be useful" type="video" url="https://youtu.be/qEaVzh-oBBc" /%}
{% card title="Tutorial: React Standalone Tutorial" description="Walkthrough for creating a React standalone application with Nx" type="documentation" url="/getting-started/tutorials/react-standalone-tutorial" /%}
{% card title="Tutorial: Angular Standalone Tutorial" description="Walkthrough for creating an Angular standalone application with Nx" type="documentation" url="/getting-started/tutorials/angular-standalone-tutorial" /%}
{% /cards %} {% /cards %}
## How to Choose ## How to Choose

View File

@ -137,9 +137,6 @@ To avoid potential issues, it is [recommended to update one major version of Nx
Try one of these tutorials for a full walkthrough of what to do after you install Nx Try one of these tutorials for a full walkthrough of what to do after you install Nx
- [TypeScript Packages Tutorial](/getting-started/tutorials/typescript-packages-tutorial) - [TypeScript Packages Tutorial](/getting-started/tutorials/typescript-packages-tutorial)
- [Single React App Tutorial](/getting-started/tutorials/react-standalone-tutorial)
- [Single Angular App Tutorial](/getting-started/tutorials/angular-standalone-tutorial)
- [Single Vue App Tutorial](/getting-started/tutorials/vue-standalone-tutorial)
- [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial) - [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial)
- [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial) - [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial)

View File

@ -59,22 +59,12 @@ Also, here are some recipes that give you more details based on the technology s
{% /cards %} {% /cards %}
{% cards cols="2" lgCols="3" mdCols="3" smCols="2" %} {% cards cols="2" lgCols="4" mdCols="4" smCols="2" %}
{% link-card title="TypeScript Packages" type="tutorial" url="/getting-started/tutorials/typescript-packages-tutorial" icon="jsMono" /%} {% link-card title="TypeScript Packages" type="tutorial" url="/getting-started/tutorials/typescript-packages-tutorial" icon="jsMono" /%}
{% link-card title="Single React App" type="tutorial" url="/getting-started/tutorials/react-standalone-tutorial" icon="react" /%}
{% link-card title="React Monorepo" type="tutorial" url="/getting-started/tutorials/react-monorepo-tutorial" icon="reactMono" /%} {% link-card title="React Monorepo" type="tutorial" url="/getting-started/tutorials/react-monorepo-tutorial" icon="reactMono" /%}
{% /cards %}
{% cards cols="2" lgCols="4" mdCols="4" smCols="2" %}
{% link-card title="Single Vue App" type="tutorial" url="/getting-started/tutorials/vue-standalone-tutorial" icon="vue" /%}
{% link-card title="Single Angular App" type="tutorial" url="/getting-started/tutorials/angular-standalone-tutorial" icon="angular" /%}
{% link-card title="Angular Monorepo" type="tutorial" url="/getting-started/tutorials/angular-monorepo-tutorial" icon="angularMono" /%} {% link-card title="Angular Monorepo" type="tutorial" url="/getting-started/tutorials/angular-monorepo-tutorial" icon="angularMono" /%}
{% link-card title="Gradle Monorepo" type="tutorial" url="/getting-started/tutorials/gradle-tutorial" icon="gradle" /%} {% link-card title="Gradle Monorepo" type="tutorial" url="/getting-started/tutorials/gradle-tutorial" icon="gradle" /%}

View File

@ -35,7 +35,7 @@ Here's a quick side-by-side overview comparing the features between the Angular
| Executors | ✅ (Builders) | ✅ | | Executors | ✅ (Builders) | ✅ |
| Advanced Generators (e.g. Module Federation, Tailwind,...) | ❌ | ✅ | | Advanced Generators (e.g. Module Federation, Tailwind,...) | ❌ | ✅ |
| Integrated Tooling (Jest, Cypress, Playwright etc.) | ❌ | ✅ | | Integrated Tooling (Jest, Cypress, Playwright etc.) | ❌ | ✅ |
| Support for [single-project Workspaces](/getting-started/tutorials/angular-standalone-tutorial) | ✅ | ✅ | | Support for single-project Workspaces | ✅ | ✅ |
| First-Class [Monorepo Support](/getting-started/tutorials/angular-monorepo-tutorial) | ❌\* | ✅ | | First-Class [Monorepo Support](/getting-started/tutorials/angular-monorepo-tutorial) | ❌\* | ✅ |
| [Enforced Module Boundaries](/features/enforce-module-boundaries) | ❌ | ✅ | | [Enforced Module Boundaries](/features/enforce-module-boundaries) | ❌ | ✅ |
| Interactive [Project Graph](/features/explore-graph) | ❌ | ✅ | | Interactive [Project Graph](/features/explore-graph) | ❌ | ✅ |
@ -67,8 +67,6 @@ Nx is not just exclusively for monorepos, but can create
- a single-project workspace (basically what the Angular CLI gives you) - a single-project workspace (basically what the Angular CLI gives you)
- a monorepo workspace (multiple projects in a single repo) - a monorepo workspace (multiple projects in a single repo)
You can check out the [Angular single-project workspace tutorial](/getting-started/tutorials/angular-standalone-tutorial) to learn more about it.
### Generate a new project ### Generate a new project
You can create a new Nx single-project workspace using the following command: You can create a new Nx single-project workspace using the following command:
@ -270,7 +268,7 @@ Nx goes beyond being just a CLI and comes with [Nx Console](/getting-started/edi
Nx is really made to scale with you. You can Nx is really made to scale with you. You can
- start small with a single-project workspace - start small with a single-project workspace
- modularize your application into more fine-grained libraries for better maintainability as your application (and team) grows ([more about that here](/getting-started/tutorials/angular-standalone-tutorial#modularizing-your-angular-app-with-local-libraries)), including mechanisms to make sure [things stay within their boundaries](/features/enforce-module-boundaries) - modularize your application into more fine-grained libraries for better maintainability as your application (and team) grows, including mechanisms to make sure [things stay within their boundaries](/features/enforce-module-boundaries)
- you can then migrate to a monorepo when you are ready and need one ([more here](/recipes/tips-n-tricks/standalone-to-monorepo)) - you can then migrate to a monorepo when you are ready and need one ([more here](/recipes/tips-n-tricks/standalone-to-monorepo))
- or even [add Webpack Module Federation support](/recipes/angular/module-federation-with-ssr) - or even [add Webpack Module Federation support](/recipes/angular/module-federation-with-ssr)
@ -408,5 +406,4 @@ There is also a guide describing how to [consolidate multiple Angular CLI projec
You can learn more about Angular & Nx by following our dedicated tutorials: You can learn more about Angular & Nx by following our dedicated tutorials:
- [Tutorial: Building Angular Apps with the Nx Standalone Projects Setup](/getting-started/tutorials/angular-standalone-tutorial)
- [Tutorial: Building Angular Apps in an Nx Monorepo](/getting-started/tutorials/angular-monorepo-tutorial) - [Tutorial: Building Angular Apps in an Nx Monorepo](/getting-started/tutorials/angular-monorepo-tutorial)

View File

@ -59,8 +59,8 @@ npm add -D @nx/angular
{% /tab %} {% /tab %}
{% /tabs %} {% /tabs %}
{% callout type="note" title="Angular Tutorials" %} {% callout type="note" title="Angular Tutorial" %}
For a full tutorial experience, follow the [Angular Standalone Tutorial](/getting-started/tutorials/angular-standalone-tutorial) or the [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial) For a full tutorial experience, follow the [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial)
{% /callout %} {% /callout %}
## Using the Angular Plugin ## Using the Angular Plugin
@ -127,7 +127,6 @@ nx g @nx/angular:service apps/appName/src/lib/my-service/my-service
## More Documentation ## More Documentation
- [Angular Standalone Tutorial](/getting-started/tutorials/angular-standalone-tutorial)
- [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial) - [Angular Monorepo Tutorial](/getting-started/tutorials/angular-monorepo-tutorial)
- [Migrating from the Angular CLI](/recipes/angular/migration/angular) - [Migrating from the Angular CLI](/recipes/angular/migration/angular)
- [Setup Module Federation with Angular and Nx](/concepts/module-federation/faster-builds-with-module-federation) - [Setup Module Federation with Angular and Nx](/concepts/module-federation/faster-builds-with-module-federation)

View File

@ -12,8 +12,8 @@ It provides:
To create a new workspace with React, run `npx create-nx-workspace@latest --preset=react-standalone`. To create a new workspace with React, run `npx create-nx-workspace@latest --preset=react-standalone`.
{% callout type="note" title="React Tutorials" %} {% callout type="note" title="React Tutorial" %}
For a full tutorial experience, follow the [React Standalone Tutorial](/getting-started/tutorials/react-standalone-tutorial) or the [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial) For a full tutorial experience, follow the [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial)
{% /callout %} {% /callout %}
### Installation ### Installation
@ -144,7 +144,6 @@ The library in `dist` is publishable to npm or a private registry.
## More Documentation ## More Documentation
- [React Standalone Tutorial](/getting-started/tutorials/react-standalone-tutorial)
- [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial) - [React Monorepo Tutorial](/getting-started/tutorials/react-monorepo-tutorial)
- [Using Cypress](/nx-api/cypress) - [Using Cypress](/nx-api/cypress)
- [Using Jest](/nx-api/jest) - [Using Jest](/nx-api/jest)

View File

@ -11,10 +11,6 @@ The Nx plugin for [Vue](https://vuejs.org/).
To create a new workspace with Vue, run `npx create-nx-workspace@latest --preset=vue`. To create a new workspace with Vue, run `npx create-nx-workspace@latest --preset=vue`.
{% callout type="note" title="Vue Standalone Tutorial" %}
For a full tutorial experience, follow the [Vue Standalone Tutorial](/getting-started/tutorials/vue-standalone-tutorial)
{% /callout %}
### Installation ### Installation
{% callout type="note" title="Keep Nx Package Versions In Sync" %} {% callout type="note" title="Keep Nx Package Versions In Sync" %}
@ -59,7 +55,3 @@ To generate a Vue library, run the following:
```shell ```shell
nx g @nx/vue:lib libs/my-lib nx g @nx/vue:lib libs/my-lib
``` ```
## More Documentation
- [Vue Standalone Tutorial](/getting-started/tutorials/vue-standalone-tutorial)

View File

@ -7,11 +7,8 @@
- [Editor Setup](/getting-started/editor-setup) - [Editor Setup](/getting-started/editor-setup)
- [Tutorials](/getting-started/tutorials) - [Tutorials](/getting-started/tutorials)
- [TypeScript Packages](/getting-started/tutorials/typescript-packages-tutorial) - [TypeScript Packages](/getting-started/tutorials/typescript-packages-tutorial)
- [React Standalone](/getting-started/tutorials/react-standalone-tutorial)
- [React Monorepo](/getting-started/tutorials/react-monorepo-tutorial) - [React Monorepo](/getting-started/tutorials/react-monorepo-tutorial)
- [Angular Standalone](/getting-started/tutorials/angular-standalone-tutorial)
- [Angular Monorepo](/getting-started/tutorials/angular-monorepo-tutorial) - [Angular Monorepo](/getting-started/tutorials/angular-monorepo-tutorial)
- [Vue Standalone](/getting-started/tutorials/vue-standalone-tutorial)
- [Gradle Monorepo](/getting-started/tutorials/gradle-tutorial) - [Gradle Monorepo](/getting-started/tutorials/gradle-tutorial)
- [Features](/features) - [Features](/features)
- [Run Tasks](/features/run-tasks) - [Run Tasks](/features/run-tasks)

View File

@ -15,10 +15,6 @@ What will you learn?
- how to modularize your codebase and impose architectural constraints for better maintainability - how to modularize your codebase and impose architectural constraints for better maintainability
- [how to speed up CI with Nx Cloud ⚡](#fast-ci) - [how to speed up CI with Nx Cloud ⚡](#fast-ci)
{% callout type="info" title="Looking for an Angular standalone app?" %}
Note, this tutorial sets up a repo with applications and libraries in their own subfolders. If you are looking for an Angular standalone app setup then check out our [Angular standalone app tutorial](/getting-started/tutorials/angular-standalone-tutorial).
{% /callout %}
## Nx CLI vs. Angular CLI ## Nx CLI vs. Angular CLI
Nx evolved from being an extension of the Angular CLI to a [fully standalone CLI working with multiple frameworks](/getting-started/why-nx#how-does-nx-work). As a result, adopting Nx as an Angular user is relatively straightforward. Your existing code, including builders and schematics, will still work as before, but you'll also have access to all the benefits Nx offers. Nx evolved from being an extension of the Angular CLI to a [fully standalone CLI working with multiple frameworks](/getting-started/why-nx#how-does-nx-work). As a result, adopting Nx as an Angular user is relatively straightforward. Your existing code, including builders and schematics, will still work as before, but you'll also have access to all the benefits Nx offers.

File diff suppressed because it is too large Load Diff

View File

@ -15,10 +15,6 @@ What will you learn?
- how to modularize your codebase and impose architectural constraints for better maintainability - how to modularize your codebase and impose architectural constraints for better maintainability
- [how to speed up CI with Nx Cloud ⚡](#fast-ci) - [how to speed up CI with Nx Cloud ⚡](#fast-ci)
{% callout type="info" title="Looking for a React standalone app?" %}
Note, this tutorial sets up a repo with applications and libraries in their own subfolders. If you are looking for a React standalone app setup then check out our [React standalone app tutorial](/getting-started/tutorials/react-standalone-tutorial).
{% /callout %}
## Why Use an Nx Monorepo? ## Why Use an Nx Monorepo?
In this tutorial, we'll set up a monorepo that is configured with a set of features that work together toward the goal of allowing developers to focus on building features rather than the configuration, coordination and maintenance of the tooling in the repo. In this tutorial, we'll set up a monorepo that is configured with a set of features that work together toward the goal of allowing developers to focus on building features rather than the configuration, coordination and maintenance of the tooling in the repo.

View File

@ -1,248 +0,0 @@
{
"project": {
"name": "react-app",
"type": "lib",
"data": {
"root": ".",
"targets": {
"vite:build": {
"options": {
"cwd": ".",
"command": "vite build"
},
"cache": true,
"dependsOn": ["^vite:build"],
"inputs": [
"default",
"^default",
{
"externalDependencies": ["vite"]
}
],
"outputs": ["{projectRoot}/dist"],
"executor": "nx:run-commands",
"configurations": {}
},
"build": {
"executor": "nx:run-script",
"metadata": {
"scriptContent": "nx vite:build",
"runCommand": "npm run build"
},
"cache": true,
"dependsOn": ["typecheck"],
"options": {
"script": "build"
},
"configurations": {}
}
},
"sourceRoot": ".",
"name": "react-app",
"projectType": "library",
"metadata": {
"targetGroups": {
"NPM Scripts": ["build"]
}
},
"implicitDependencies": [],
"tags": []
}
},
"sourceMap": {
"root": ["package.json", "nx/core/package-json-workspaces"],
"targets": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.cache": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.dependsOn": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.inputs": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.outputs": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.executor": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options.cwd": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options.command": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve.options": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve.executor": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve.options.cwd": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve.options.command": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:preview": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:preview.options": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:preview.executor": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:preview.options.cwd": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:preview.options.command": [
"vite.config.ts",
"@nx/vite/plugin"
],
"targets.serve-static": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve-static.executor": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve-static.options": ["vite.config.ts", "@nx/vite/plugin"],
"targets.serve-static.options.buildTarget": [
"vite.config.ts",
"@nx/vite/plugin"
],
"targets.serve-static.options.spa": ["vite.config.ts", "@nx/vite/plugin"],
"targets.eslint:lint": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.cache": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.options": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.inputs": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.outputs": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.executor": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.options.cwd": [".eslintrc.cjs", "@nx/eslint/plugin"],
"targets.eslint:lint.options.command": [
".eslintrc.cjs",
"@nx/eslint/plugin"
],
"targets.typecheck": ["package.json", "nx/core/package-json-workspaces"],
"targets.typecheck.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.typecheck.options": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.typecheck.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.typecheck.cache": ["nx.json", "nx/core/target-defaults"],
"targets.typecheck.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.typecheck.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.typecheck.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build": ["package.json", "nx/core/package-json-workspaces"],
"targets.build.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.options": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.cache": ["nx.json", "nx/core/target-defaults"],
"targets.build.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.lint": ["package.json", "nx/core/package-json-workspaces"],
"targets.lint.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.lint.options": ["package.json", "nx/core/package-json-workspaces"],
"targets.lint.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.lint.cache": ["nx.json", "nx/core/target-defaults"],
"targets.lint.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.lint.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.lint.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
],
"sourceRoot": ["package.json", "nx/core/package-json-workspaces"],
"name": ["package.json", "nx/core/package-json-workspaces"],
"projectType": ["package.json", "nx/core/package-json-workspaces"],
"metadata.targetGroups": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.0": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.1": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.2": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.3": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.4": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.dev": ["package.json", "nx/core/package-json-workspaces"],
"targets.dev.executor": ["package.json", "nx/core/package-json-workspaces"],
"targets.dev.options": ["package.json", "nx/core/package-json-workspaces"],
"targets.dev.metadata": ["package.json", "nx/core/package-json-workspaces"],
"targets.dev.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.dev.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.dev.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.dependsOn": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview": ["package.json", "nx/core/package-json-workspaces"],
"targets.preview.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview.options": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.preview.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
]
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,186 +0,0 @@
{
"project": {
"name": "vue-app",
"type": "lib",
"data": {
"root": ".",
"targets": {
"vite:build": {
"options": {
"cwd": ".",
"command": "vite build"
},
"cache": true,
"dependsOn": ["^vite:build"],
"inputs": [
"default",
"^default",
{
"externalDependencies": ["vite"]
}
],
"outputs": ["{projectRoot}/dist"],
"executor": "nx:run-commands",
"configurations": {}
},
"build-only": {
"executor": "nx:run-script",
"metadata": {
"scriptContent": "nx vite:build",
"runCommand": "npm run build-only"
},
"outputs": ["{projectRoot}/dist"],
"cache": true,
"options": {
"script": "build-only"
},
"configurations": {}
},
"build": {
"executor": "nx:run-script",
"metadata": {
"scriptContent": "nx exec -- echo 'Ran type-check and build-only'",
"runCommand": "npm run build"
},
"dependsOn": [
"type-check",
{
"target": "build-only",
"params": "forward"
}
],
"options": {
"script": "build"
},
"configurations": {}
}
},
"sourceRoot": ".",
"name": "vue-app",
"projectType": "library",
"metadata": {
"targetGroups": {
"NPM Scripts": ["build", "build-only"]
}
},
"implicitDependencies": [],
"tags": []
}
},
"sourceMap": {
"root": ["package.json", "nx/core/package-json-workspaces"],
"targets": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.cache": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.dependsOn": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.inputs": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.outputs": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.executor": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options.cwd": ["vite.config.ts", "@nx/vite/plugin"],
"targets.vite:build.options.command": ["vite.config.ts", "@nx/vite/plugin"],
"targets.build-only": ["package.json", "nx/core/package-json-workspaces"],
"targets.build-only.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build-only.options": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build-only.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build-only.outputs": ["nx.json", "nx/core/target-defaults"],
"targets.build-only.cache": ["nx.json", "nx/core/target-defaults"],
"targets.build-only.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build-only.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build-only.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
],
"sourceRoot": ["package.json", "nx/core/package-json-workspaces"],
"name": ["package.json", "nx/core/package-json-workspaces"],
"projectType": ["package.json", "nx/core/package-json-workspaces"],
"metadata.targetGroups": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.0": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.1": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.2": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.3": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.4": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.5": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.6": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.7": [
"package.json",
"nx/core/package-json-workspaces"
],
"metadata.targetGroups.NPM Scripts.8": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build": ["package.json", "nx/core/package-json-workspaces"],
"targets.build.executor": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.dependsOn": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.options": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.options.script": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata.scriptContent": [
"package.json",
"nx/core/package-json-workspaces"
],
"targets.build.metadata.runCommand": [
"package.json",
"nx/core/package-json-workspaces"
]
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

File diff suppressed because it is too large Load Diff

View File

@ -613,29 +613,29 @@ const standaloneTutorialRedirects = {
'/react-tutorial/5-summary': '/react-tutorial/5-summary':
'/getting-started/tutorials/react-monorepo-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial': '/react-standalone-tutorial':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial/1-code-generation': '/react-standalone-tutorial/1-code-generation':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial/2-project-graph': '/react-standalone-tutorial/2-project-graph':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial/3-task-running': '/react-standalone-tutorial/3-task-running':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial/4-task-pipelines': '/react-standalone-tutorial/4-task-pipelines':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/react-standalone-tutorial/5-summary': '/react-standalone-tutorial/5-summary':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/angular-standalone-tutorial': '/angular-standalone-tutorial':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-standalone-tutorial/1-code-generation': '/angular-standalone-tutorial/1-code-generation':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-standalone-tutorial/2-project-graph': '/angular-standalone-tutorial/2-project-graph':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-standalone-tutorial/3-task-running': '/angular-standalone-tutorial/3-task-running':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-standalone-tutorial/4-task-pipelines': '/angular-standalone-tutorial/4-task-pipelines':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-standalone-tutorial/5-summary': '/angular-standalone-tutorial/5-summary':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
}; };
const packagesIndexes = { const packagesIndexes = {
@ -782,9 +782,9 @@ const conceptUrls = {
'/getting-started/tutorials/integrated-repo-tutorial': '/getting-started/tutorials/integrated-repo-tutorial':
'/getting-started/tutorials/react-monorepo-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/getting-started/react-standalone-tutorial': '/getting-started/react-standalone-tutorial':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/getting-started/angular-standalone-tutorial': '/getting-started/angular-standalone-tutorial':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/concepts/more-concepts/micro-frontend-architecture': '/concepts/more-concepts/micro-frontend-architecture':
'/concepts/module-federation/micro-frontend-architecture', '/concepts/module-federation/micro-frontend-architecture',
'/concepts/more-concepts/faster-builds-with-module-federation': '/concepts/more-concepts/faster-builds-with-module-federation':
@ -806,9 +806,15 @@ const nested5minuteTutorialUrls = {
'/tutorials/integrated-repo-tutorial': '/tutorials/integrated-repo-tutorial':
'/getting-started/tutorials/integrated-repo-tutorial', '/getting-started/tutorials/integrated-repo-tutorial',
'/tutorials/react-standalone-tutorial': '/tutorials/react-standalone-tutorial':
'/getting-started/tutorials/react-standalone-tutorial', '/getting-started/tutorials/react-monorepo-tutorial',
'/getting-started/tutorials/react-standalone-tutorial':
'/getting-started/tutorials/react-monorepo-tutorial',
'/tutorials/angular-standalone-tutorial': '/tutorials/angular-standalone-tutorial':
'/getting-started/tutorials/angular-standalone-tutorial', '/getting-started/tutorials/angular-monorepo-tutorial',
'/getting-started/tutorials/angular-standalone-tutorial':
'/getting-started/tutorials/angular-monorepo-tutorial',
'/getting-started/tutorials/vue-standalone-tutorial':
'/getting-started/tutorials',
'/tutorials/node-server-tutorial': '/getting-started/tutorials', '/tutorials/node-server-tutorial': '/getting-started/tutorials',
'/angular-tutorial': '/getting-started/tutorials/angular-monorepo-tutorial', '/angular-tutorial': '/getting-started/tutorials/angular-monorepo-tutorial',
'/angular-tutorial/1-code-generation': '/angular-tutorial/1-code-generation':

View File

@ -66,11 +66,7 @@ describe('Redirect rules configuration', () => {
}); });
test('old tutorial links', () => { test('old tutorial links', () => {
const oldTutorialUrls = [ const oldTutorialUrls = ['/tutorials/integrated-repo-tutorial'];
'/tutorials/integrated-repo-tutorial',
'/tutorials/react-standalone-tutorial',
'/tutorials/angular-standalone-tutorial',
];
for (const url of oldTutorialUrls) { for (const url of oldTutorialUrls) {
expect(redirectRules.nested5minuteTutorialUrls[url]).toEqual( expect(redirectRules.nested5minuteTutorialUrls[url]).toEqual(

View File

@ -390,20 +390,6 @@ export function SmarterToolsForMonorepos(): JSX.Element {
/> />
</Link> </Link>
</Card> </Card>
<Card>
<Link
href="/getting-started/tutorials/vue-standalone-tutorial?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink"
prefetch={false}
title="Nx with Vue"
className="h-full w-full p-2 sm:p-4"
>
<span className="absolute inset-0" />
<VueIcon
aria-hidden="true"
className="h-full w-full shrink-0"
/>
</Link>
</Card>
<Card> <Card>
<Link <Link
href="/nx-api/nuxt?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink" href="/nx-api/nuxt?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink"
@ -869,20 +855,6 @@ export function SmarterToolsForMonorepos(): JSX.Element {
/> />
</Link> </Link>
</Card> </Card>
<Card>
<Link
href="/getting-started/tutorials/vue-standalone-tutorial?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink"
prefetch={false}
title="Nx with Vue"
className="h-full w-full p-2 sm:p-4"
>
<span className="absolute inset-0" />
<VueIcon
aria-hidden="true"
className="h-full w-full shrink-0"
/>
</Link>
</Card>
<Card> <Card>
<Link <Link
href="/nx-api/nuxt?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink" href="/nx-api/nuxt?utm_medium=website&utm_campaign=homepage_links&utm_content=cta_smarter_tools_techlink"