Skip to content

Commit f1a90bf

Browse files
authored
feat(nx-dev): plugin quality indicators (#18426)
1 parent bf5111c commit f1a90bf

File tree

8 files changed

+1268
-52
lines changed

8 files changed

+1268
-52
lines changed

.github/PULL_REQUEST_TEMPLATE/COMMUNITY_PLUGIN.MD

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,27 @@ _[Please make sure you have read the submission guidelines before posting an PR]
55
66
Thanks for submitting your Nx Plugin to our community plugins list. Make sure to follow these steps to ensure that your PR is approved in a timely manner.
77
8+
## Plugin Requirements
9+
10+
Before you submit your plugin to be listed in our registry, it needs to meet the following requirements:
11+
- Run some kind of automated e2e tests in your repository
12+
- Include `@nx/devkit` as a `dependency` in the plugin's `package.json`
13+
- List a `repository.url` in the plugin's `package.json`
14+
15+
i.e.
16+
17+
```
18+
{
19+
"repository": {
20+
"type": "git",
21+
"url": "https://github.com/nrwl/nx.git",
22+
"directory": "packages/web"
23+
}
24+
}
25+
```
26+
27+
Note: We reserve the right to remove unmaintained plugins from the registry. If the plugins become maintained again, they can be resubmitted to the registry.
28+
829
## Steps to Submit Your Plugin
930
- Use the following commit message template: `chore(core): nx plugin submission [PLUGIN_NAME]`
1031
- Update the `community/approved-plugins.json` file with a new entry for your plugin that includes `name`, `url`, `description`:
@@ -21,7 +42,7 @@ Example:
2142
}]
2243
```
2344
24-
Once merged, your will plugin will be available when running the `nx list` command, and will also be available in the Plugin browser on [nx.dev](https://nx.dev)
45+
Once merged, your plugin will be available when running the `nx list` command, and will also be available in the Plugin Registry on [nx.dev](https://nx.dev/extending-nx/registry)
2546
-->
2647

2748
# Community Plugin Submission

community/approved-plugins.json

Lines changed: 16 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,24 @@
2525
"url": "https://github.com/nxkit/nxkit"
2626
},
2727
{
28-
"name": "nx-plugins",
29-
"description": "Nx plugin integrations with ESBuild / Vite / Snowpack / Prisma, with derived ESBuild / Snowpack / ... plugins.",
28+
"name": "nx-plugin-esbuild",
29+
"description": "Nx plugin integrations with ESBuild.",
3030
"url": "https://nx-plugins.netlify.app/"
3131
},
3232
{
33-
"name": "@codebrew/nx-aws-cdk",
34-
"description": "An Nx plugin for aws cdk develop.",
35-
"url": "https://github.com/codebrewlab/nx-plugins/tree/main/packages/nx-aws-cdk"
33+
"name": "nx-plugin-vite",
34+
"description": "Nx plugin integrations with Vite.",
35+
"url": "https://nx-plugins.netlify.app/"
36+
},
37+
{
38+
"name": "nx-plugin-snowpack",
39+
"description": "Nx plugin integrations with Snowpack.",
40+
"url": "https://nx-plugins.netlify.app/"
41+
},
42+
{
43+
"name": "nx-plugin-prisma",
44+
"description": "Nx plugin integrations with Snowpack.",
45+
"url": "https://nx-plugins.netlify.app/"
3646
},
3747
{
3848
"name": "@ago-dev/nx-aws-cdk-v2",
@@ -74,21 +84,11 @@
7484
"description": "An Nx plugin for developing cross-platform applications using Capacitor",
7585
"url": "https://github.com/nxext/nx-extensions/tree/main/packages/capacitor"
7686
},
77-
{
78-
"name": "@nxtend/firebase",
79-
"description": "An Nx plugin for developing applications using Firebase",
80-
"url": "https://github.com/nxtend-team/nxtend/tree/main/packages/firebase"
81-
},
8287
{
8388
"name": "@angular-architects/ddd",
8489
"description": "Nx plugin for structuring a monorepo with domains and layers",
8590
"url": "https://github.com/angular-architects/nx-ddd-plugin"
8691
},
87-
{
88-
"name": "@offeringsolutions/nx-karma-to-jest",
89-
"description": "Nx plugin for replacing karma with jest in an Nx workspace",
90-
"url": "https://github.com/FabianGosebrink/nx-karma-to-jest"
91-
},
9292
{
9393
"name": "@flowaccount/nx-serverless",
9494
"description": "Nx plugin for node/angular-universal schematics and deployment builders in an Nx workspace",
@@ -109,21 +109,6 @@
109109
"description": "Nx plugin to run playwright e2e tests in an Nx workspace",
110110
"url": "https://github.com/Bielik20/nx-plugins/tree/master/packages/nx-playwright"
111111
},
112-
{
113-
"name": "@dev-thought/nx-deploy-it",
114-
"description": "Nx plugin to deploy applications on your favorite cloud provider",
115-
"url": "https://github.com/Dev-Thought/nx-plugins/tree/master/libs/nx-deploy-it"
116-
},
117-
{
118-
"name": "@offeringsolutions/nx-protractor-to-cypress",
119-
"description": "Nx plugin to replace protractor with cypress in an nx workspace",
120-
"url": "https://github.com/FabianGosebrink/nx-protractor-to-cypress"
121-
},
122-
{
123-
"name": "@angular-custom-builders/lite-serve",
124-
"description": "Nx plugin to run the e2e test on an existing dist folder",
125-
"url": "https://github.com/mauriziovitale/angular-plugins/tree/master/libs/lite-serve"
126-
},
127112
{
128113
"name": "@nx-plus/nuxt",
129114
"description": "Nx plugin adding first class support for Nuxt in your Nx workspace.",
@@ -235,7 +220,7 @@
235220
"url": "https://github.com/trafilea/nx-shopify"
236221
},
237222
{
238-
"name": "nx-dotnet",
223+
"name": "@nx-dotnet/core",
239224
"description": "Nx plugin for developing and housing .NET projects within an Nx workspace.",
240225
"url": "https://github.com/nx-dotnet/nx-dotnet"
241226
},

docs/shared/plugins/maintain-published-plugin.md

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,27 @@ After that, you can then install your plugin like any other npm package,
1919

2020
## List your Nx Plugin
2121

22-
Nx provides a utility (`nx list`) that lists both core and community plugins. To submit your plugin, please follow the steps below:
22+
Nx provides a utility (`nx list`) that lists both core and community plugins. You can submit your plugin to be added to this list, but it needs to meet a few criteria first:
23+
24+
- Run some kind of automated e2e tests in your repository
25+
- Include `@nx/devkit` as a `dependency` in the plugin's `package.json`
26+
- List a `repository.url` in the plugin's `package.json`
27+
28+
```jsonc {% fileName="package.json" %}
29+
{
30+
"repository": {
31+
"type": "git",
32+
"url": "https://github.com/nrwl/nx.git",
33+
"directory": "packages/web"
34+
}
35+
}
36+
```
37+
38+
{% callout type="warning" title="Unmaintained Plugins" %}
39+
We reserve the right to remove unmaintained plugins from the registry. If the plugins become maintained again, they can be resubmitted to the registry.
40+
{% /callout %}
41+
42+
Once those criteria are met, you can submit your plugin by following the steps below:
2343

2444
- Fork the [Nx repo](https://github.com/nrwl/nx/fork) (if you haven't already)
2545
- Update the [`community/approved-plugins.json` file](https://github.com/nrwl/nx/blob/master/community/approved-plugins.json) with a new entry for your plugin that includes name, url and description

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy