@aws/nx-plugin 0.21.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -71,17 +71,11 @@
71
71
  1. Create a new NX workspace
72
72
 
73
73
  ```bash
74
- npx create-nx-workspace@~20.6.3 demo --pm=pnpm --preset=ts --ci=skip --formatter=prettier
74
+ npx create-nx-workspace@~20.6.3 demo --pm=pnpm --preset=@aws/nx-plugin --ci=skip
75
75
  cd demo
76
76
  ```
77
77
 
78
- 2. Install the `@aws/nx-plugin`
79
-
80
- ```bash
81
- pnpm add -Dw @aws/nx-plugin
82
- ```
83
-
84
- 3. Add components:
78
+ 2. Add components:
85
79
 
86
80
  ```bash
87
81
  # Generate a tRPC API backend
package/generators.json CHANGED
@@ -86,13 +86,6 @@
86
86
  "metric": "g13",
87
87
  "hidden": true
88
88
  },
89
- "open-api#ts-metadata": {
90
- "factory": "./src/open-api/ts-metadata/generator",
91
- "schema": "./src/open-api/ts-metadata/schema.json",
92
- "description": "Generate typescript metadata from an OpenAPI specification",
93
- "metric": "g19",
94
- "hidden": true
95
- },
96
89
  "license": {
97
90
  "factory": "./src/license/generator",
98
91
  "schema": "./src/license/schema.json",
@@ -123,6 +116,20 @@
123
116
  "schema": "./src/ts/mcp-server/schema.json",
124
117
  "description": "Generate a TypeScript Model Context Protocol (MCP) server for providing context to Large Language Models",
125
118
  "metric": "g18"
119
+ },
120
+ "open-api#ts-metadata": {
121
+ "factory": "./src/open-api/ts-metadata/generator",
122
+ "schema": "./src/open-api/ts-metadata/schema.json",
123
+ "description": "Generate typescript metadata from an OpenAPI specification",
124
+ "metric": "g19",
125
+ "hidden": true
126
+ },
127
+ "preset": {
128
+ "factory": "./src/preset/generator",
129
+ "schema": "./src/preset/schema.json",
130
+ "description": "The @aws/nx-plugin workspace preset.",
131
+ "metric": "g20",
132
+ "hidden": true
126
133
  }
127
134
  }
128
135
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws/nx-plugin",
3
- "version": "0.21.0",
3
+ "version": "0.22.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/awslabs/nx-plugin-for-aws.git",
@@ -182,6 +182,7 @@ export class UserIdentity extends Construct {
182
182
  produce: () =>
183
183
  [
184
184
  'http://localhost:4200',
185
+ 'http://localhost:4300',
185
186
  \`https://\${Stack.of(this).region}.console.aws.amazon.com\`,
186
187
  ].concat(
187
188
  this.findCloudFrontDistributions().map(
@@ -107,6 +107,7 @@ export class UserIdentity extends Construct {
107
107
  produce: () =>
108
108
  [
109
109
  'http://localhost:4200',
110
+ 'http://localhost:4300',
110
111
  `https://${Stack.of(this).region}.console.aws.amazon.com`,
111
112
  ].concat(
112
113
  this.findCloudFrontDistributions().map(
@@ -121,6 +121,13 @@ exports[`infra generator > should configure project.json with correct targets >
121
121
  "sourceRoot": "packages/test/src",
122
122
  "tags": [],
123
123
  "targets": {
124
+ "bootstrap": {
125
+ "executor": "nx:run-commands",
126
+ "options": {
127
+ "command": "cdk bootstrap",
128
+ "cwd": "packages/test",
129
+ },
130
+ },
124
131
  "build": {
125
132
  "dependsOn": [
126
133
  "lint",
@@ -129,6 +136,13 @@ exports[`infra generator > should configure project.json with correct targets >
129
136
  "synth",
130
137
  ],
131
138
  },
139
+ "cdk": {
140
+ "executor": "nx:run-commands",
141
+ "options": {
142
+ "command": "cdk",
143
+ "cwd": "packages/test",
144
+ },
145
+ },
132
146
  "compile": {
133
147
  "executor": "nx:run-commands",
134
148
  "options": {
@@ -469,9 +483,23 @@ exports[`infra generator > should generate files with correct content > project-
469
483
  "projectType": "application",
470
484
  "tags": [],
471
485
  "targets": {
486
+ "bootstrap": {
487
+ "executor": "nx:run-commands",
488
+ "options": {
489
+ "cwd": "packages/test",
490
+ "command": "cdk bootstrap"
491
+ }
492
+ },
472
493
  "build": {
473
494
  "dependsOn": ["lint", "compile", "test", "synth"]
474
495
  },
496
+ "cdk": {
497
+ "executor": "nx:run-commands",
498
+ "options": {
499
+ "cwd": "packages/test",
500
+ "command": "cdk"
501
+ }
502
+ },
475
503
  "compile": {
476
504
  "executor": "nx:run-commands",
477
505
  "outputs": ["{workspaceRoot}/dist/packages/test/tsc"],
@@ -768,6 +796,13 @@ exports[`infra generator > should handle custom project names correctly > custom
768
796
  "sourceRoot": "packages/custom-infra/src",
769
797
  "tags": [],
770
798
  "targets": {
799
+ "bootstrap": {
800
+ "executor": "nx:run-commands",
801
+ "options": {
802
+ "command": "cdk bootstrap",
803
+ "cwd": "packages/custom-infra",
804
+ },
805
+ },
771
806
  "build": {
772
807
  "dependsOn": [
773
808
  "lint",
@@ -776,6 +811,13 @@ exports[`infra generator > should handle custom project names correctly > custom
776
811
  "synth",
777
812
  ],
778
813
  },
814
+ "cdk": {
815
+ "executor": "nx:run-commands",
816
+ "options": {
817
+ "command": "cdk",
818
+ "cwd": "packages/custom-infra",
819
+ },
820
+ },
779
821
  "compile": {
780
822
  "executor": "nx:run-commands",
781
823
  "options": {
@@ -78,6 +78,20 @@ function infraGenerator(tree, schema) {
78
78
  command: `cdk destroy --require-approval=never --app ${synthDirFromProject}`,
79
79
  },
80
80
  };
81
+ config.targets.cdk = {
82
+ executor: 'nx:run-commands',
83
+ options: {
84
+ cwd: libraryRoot,
85
+ command: 'cdk',
86
+ },
87
+ };
88
+ config.targets.bootstrap = {
89
+ executor: 'nx:run-commands',
90
+ options: {
91
+ cwd: libraryRoot,
92
+ command: 'cdk bootstrap',
93
+ },
94
+ };
81
95
  config.targets = (0, object_1.sortObjectKeys)(config.targets);
82
96
  return config;
83
97
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/infra/app/generator.ts"],"names":[],"mappings":";;;AAqCA,wCAoIC;;AAzKD;;;GAGG;AACH,uCAYoB;AAEpB,4EAAyE;AACzE,mDAAoD;AACpD,qDAAwE;AACxE,qEAA0E;AAC1E,yFAGiD;AACjD,yCAAgD;AAChD,wDAAwB;AACxB,+CAA0D;AAC1D,gFAAyC;AACzC,+CAAoD;AACpD,uCAAmE;AACnE,iDAAsE;AAEzD,QAAA,wBAAwB,GACnC,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAE/B,SAAsB,cAAc,CAClC,IAAU,EACV,MAA4B;;QAE5B,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,IAAA,mBAAc,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEnC,MAAM,IAAA,6CAAyB,EAAC,IAAI,CAAC,CAAC;QAEtC,MAAM,gBAAgB,GAAG,SAAS,GAAG,CAAC,GAAG,UAAU,CAAC;QACpD,MAAM,mBAAmB,GACvB,GAAG,CAAC,GAAG;aACJ,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aACf,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC;QAClC,MAAM,aAAa,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC7E,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;QACvC,MAAM,cAAc,GAAG,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAA,wBAAY,EAAC,cAAc,CAAC,CAAC;QAChD,MAAM,kBAAkB,GAAG,GAAG,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,IAAA,0BAAiB,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACnD,IAAA,sBAAa,EACX,IAAI,EAAE,0BAA0B;QAChC,IAAA,0BAAiB,EAAC,SAAS,EAAE,aAAa,CAAC,EAAE,6BAA6B;QAC1E,WAAW,gCAET,QAAQ,EAAE,mBAAmB,EAC7B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAA,0BAAS,EAAC,cAAc,CAAC,EACpC,kBAAkB,EAClB,SAAS,EAAE,IAAA,iCAAwB,GAAE,CAAC,IAAI,IACvC,MAAM,KACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAEvC;YACE,iBAAiB,EAAE,0BAAiB,CAAC,SAAS;SAC/C,CACF,CAAC;QACF,IAAA,sBAAa,EACX,IAAI,EAAE,0BAA0B;QAChC,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,EAAE,mDAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,EAC3E,IAAA,0BAAiB,EAAC,0CAAY,EAAE,mDAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,kBAEnE,QAAQ,EAAE,mBAAmB,EAC7B,UAAU,EAAE,IAAA,wBAAY,EAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,IAC9C,MAAM,GAEX;YACE,iBAAiB,EAAE,0BAAiB,CAAC,YAAY;SAClD,CACF,CAAC;QACF,IAAA,mBAAU,EACR,IAAI,EACJ,GAAG,WAAW,eAAe,EAC7B,CAAC,MAA4B,EAAE,EAAE;;YAC/B,MAAM,CAAC,WAAW,GAAG,aAAa,CAAC;YACnC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG;gBAC/B,GAAG,CAAC,MAAA,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,mCAAI,EAAE,CAAC;gBACzC,OAAO;aACR,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG;gBACrB,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,iBAAiB;gBAC3B,MAAM,EAAE,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,CAAC,kBAAkB,gBAAgB,EAAE,CAAC;gBAC/C,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,mEAAmE;gBACrG,OAAO,EAAE;oBACP,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,WAAW;iBACrB;aACF,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG;gBACtB,QAAQ,EAAE,iBAAiB;gBAC3B,OAAO,EAAE;oBACP,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,6CAA6C,mBAAmB,EAAE;iBAC5E;aACF,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG;gBACvB,QAAQ,EAAE,iBAAiB;gBAC3B,OAAO,EAAE;oBACP,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE,8CAA8C,mBAAmB,EAAE;iBAC7E;aACF,CAAC;YACF,MAAM,CAAC,OAAO,GAAG,IAAA,uBAAc,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QACF,IAAA,mBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EACf,0CAAY,EACZ,mDAAqB,EACrB,KAAK,EACL,MAAM,EACN,UAAU,CACX,EACD,gBAAgB,CACjB,CAAC;QACF,IAAA,qCAA4B,EAC1B,IAAI,EACJ,IAAA,uBAAY,EAAC;YACX,iCAAiC;YACjC,aAAa;YACb,SAAS;YACT,SAAS;YACT,YAAY;YACZ,oBAAoB;SACrB,CAAC,EACF,IAAA,uBAAY,EAAC,CAAC,KAAK,CAAC,CAAC,CACtB,CAAC;QAEF,IAAA,mBAAU,EAAC,IAAI,EAAE,GAAG,WAAW,gBAAgB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,iCAC1D,QAAQ,KACX,UAAU,EAAE;gBACV,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;gBAC9B;oBACE,IAAI,EAAE,GAAG,cAAI,CAAC,QAAQ,CACpB,WAAW,EACX,GAAG,IAAI,CAAC,IAAI,IAAI,0CAAY,EAAE,CAC/B,IAAI,mDAAqB,gBAAgB;iBAC3C;aACF,IACD,CAAC,CAAC;QAEJ,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE,CAAC,gCAAwB,CAAC,CAAC,CAAC;QAExE,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;QACjC,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;CAAA;AACD,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/infra/app/generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,199 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`preset generator > should run successfully > .prettierignore 1`] = `
4
+ "# Add files here to ignore them from prettier formatting
5
+ /dist
6
+ /coverage
7
+ /.nx/cache
8
+ /.nx/workspace-data"
9
+ `;
10
+
11
+ exports[`preset generator > should run successfully > .prettierrc 1`] = `
12
+ "{ "singleQuote": true }
13
+ "
14
+ `;
15
+
16
+ exports[`preset generator > should run successfully > README.md 1`] = `
17
+ "# proj
18
+
19
+ ✨ Your new, shiny [Nx workspace](https://nx.dev) has been successfully created! ✨.
20
+
21
+ [Learn more about this workspace setup and the @aws/nx-plugin](https://awslabs.github.io/nx-plugin-for-aws). Now, let's get you up to speed!
22
+
23
+ ## Install Nx Console
24
+
25
+ Nx Console is an editor extension that enriches your developer experience. It lets you run tasks, generate code, and improves code autocompletion in your IDE. It is available for VSCode and IntelliJ.
26
+
27
+ [Install Nx Console »](https://nx.dev/getting-started/editor-setup?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
28
+
29
+ ## Available generators
30
+
31
+ The following list of generators are what is currently available in the \`@aws/nx-plugin\`:
32
+
33
+ - **ts#project**: Generates a TypeScript project
34
+
35
+ - **py#project**: Generates a Python project
36
+
37
+ - **py#fast-api**: Generates a FastAPI Python project
38
+
39
+ - **ts#cloudscape-website**: Generates a React static website based on Cloudscape
40
+
41
+ - **ts#cloudscape-website#auth**: Adds auth to an existing cloudscape website
42
+
43
+ - **ts#infra**: Generates a cdk application
44
+
45
+ - **ts#trpc-api**: creates a trpc backend
46
+
47
+ - **api-connection**: Integrates a source project with a target API project
48
+
49
+ - **license**: Add LICENSE files and configure source code licence headers
50
+
51
+ - **py#lambda-function**: Adds a lambda function to a python project
52
+
53
+ - **ts#nx-generator**: Generator for adding an Nx Generator to an existing TypeScript project
54
+
55
+ - **ts#mcp-server**: Generate a TypeScript Model Context Protocol (MCP) server for providing context to Large Language Models
56
+
57
+ You also have the option of using additional [commmunity plugins](https://nx.dev/plugin-registry) as needed.
58
+
59
+ ## Invoking a generator
60
+
61
+ \`\`\`sh
62
+ npx nx g @aws/nx-plugin:<generator-name>
63
+ \`\`\`
64
+
65
+ Alternatively you can use the NX IDE plugin to invoke your generators.
66
+
67
+ Refer to the [full documentation](https://awslabs.github.io/nx-plugin-for-aws) for additional guidance for each generator.
68
+
69
+ ## Common tasks
70
+
71
+ ### Build a single project
72
+
73
+ \`\`\`sh
74
+ npx nx build <project-name>
75
+ \`\`\`
76
+
77
+ ### Build all projects
78
+
79
+ \`\`\`sh
80
+ npx nx run-many --target build --all
81
+ # or
82
+ npx build:all
83
+ \`\`\`
84
+
85
+ ### Run arbitrary task
86
+
87
+ \`\`\`sh
88
+ npx nx <target> <project-name>
89
+ \`\`\`
90
+
91
+ ### Lint (and fix) all projects
92
+
93
+ \`\`\`sh
94
+ npx nx run-many --target lint --configuration=fix --all
95
+ \`\`\`
96
+
97
+ ## Test all projects (and update snapshots)
98
+
99
+ \`\`\`sh
100
+ npx nx run-many --target test --all --update
101
+ \`\`\`
102
+
103
+ These targets are either [inferred automatically](https://nx.dev/concepts/inferred-tasks?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects) or defined in the \`project.json\` or \`package.json\` files.
104
+
105
+ [More about running tasks in the Nx docs &raquo;](https://nx.dev/features/run-tasks?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
106
+
107
+ ## Keep TypeScript project references up to date
108
+
109
+ Nx automatically updates TypeScript [project references](https://www.typescriptlang.org/docs/handbook/project-references.html) in \`tsconfig.json\` files to ensure they remain accurate based on your project dependencies (\`import\` statements). This sync is automatically done when running tasks such as \`build\`, which require updated references to function correctly.
110
+
111
+ To manually trigger the process to sync the project graph dependencies information to the TypeScript project references, run the following command:
112
+
113
+ \`\`\`sh
114
+ npx nx sync
115
+ \`\`\`
116
+
117
+ You can enforce that the TypeScript project references are always in the correct state when running in CI by adding a step to your CI job configuration that runs the following command:
118
+
119
+ \`\`\`sh
120
+ npx nx sync:check
121
+ \`\`\`
122
+
123
+ [Learn more about nx sync](https://nx.dev/reference/nx-commands#sync)
124
+
125
+ ## Set up CI!
126
+
127
+ Use the following command to configure a CI workflow for your workspace:
128
+
129
+ \`\`\`sh
130
+ npx nx g ci-workflow
131
+ \`\`\`
132
+
133
+ [Learn more about Nx on CI](https://nx.dev/ci/intro/ci-with-nx#ready-get-started-with-your-provider?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
134
+
135
+ ## Useful links
136
+
137
+ Learn more:
138
+
139
+ - [@aws/nx-plugin quick-start](https://awslabs.github.io/nx-plugin-for-aws/en/get_started/quick-start/)
140
+ - [@aws/nx-plugin AI dungeon game](https://awslabs.github.io/nx-plugin-for-aws/en/get_started/tutorials/dungeon-game/overview/)
141
+ - [What are Nx plugins?](https://nx.dev/concepts/nx-plugins?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
142
+ - [Learn about Nx on CI](https://nx.dev/ci/intro/ci-with-nx?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
143
+ "
144
+ `;
145
+
146
+ exports[`preset generator > should run successfully > nx.json 1`] = `
147
+ "{
148
+ "affected": { "defaultBase": "main" },
149
+ "targetDefaults": { "build": { "cache": true }, "lint": { "cache": true } }
150
+ }
151
+ "
152
+ `;
153
+
154
+ exports[`preset generator > should run successfully > package.json 1`] = `
155
+ "{
156
+ "name": "@proj/source",
157
+ "dependencies": {},
158
+ "devDependencies": {
159
+ "@nx/js": "21.0.3",
160
+ "@nx/workspace": "21.0.3",
161
+ "@swc-node/register": "~1.9.1",
162
+ "@swc/core": "~1.5.7",
163
+ "@swc/helpers": "~0.5.11",
164
+ "prettier": "^2.6.2",
165
+ "typescript": "~5.7.2"
166
+ },
167
+ "workspaces": [
168
+ "packages/*"
169
+ ],
170
+ "type": "module",
171
+ "scripts": {
172
+ "build:all": "nx run-many --target build --all",
173
+ "affected:all": "nx affected --target build"
174
+ }
175
+ }
176
+ "
177
+ `;
178
+
179
+ exports[`preset generator > should run successfully > packages/.gitkeep 1`] = `""`;
180
+
181
+ exports[`preset generator > should run successfully > pnpm-workspace.yaml 1`] = `
182
+ "packages:
183
+ - packages/*
184
+ "
185
+ `;
186
+
187
+ exports[`preset generator > should run successfully > tsconfig.base.json 1`] = `
188
+ "{
189
+ "compilerOptions": {
190
+ "paths": {}
191
+ }
192
+ }
193
+ "
194
+ `;
195
+
196
+ exports[`preset generator > should run successfully > tsconfig.json 1`] = `
197
+ "{}
198
+ "
199
+ `;
@@ -0,0 +1,107 @@
1
+ # <%= projectName %>
2
+
3
+ ✨ Your new, shiny [Nx workspace](https://nx.dev) has been successfully created! ✨.
4
+
5
+ [Learn more about this workspace setup and the @aws/nx-plugin](https://awslabs.github.io/nx-plugin-for-aws). Now, let's get you up to speed!
6
+
7
+ ## Install Nx Console
8
+
9
+ Nx Console is an editor extension that enriches your developer experience. It lets you run tasks, generate code, and improves code autocompletion in your IDE. It is available for VSCode and IntelliJ.
10
+
11
+ [Install Nx Console &raquo;](https://nx.dev/getting-started/editor-setup?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
12
+
13
+ ## Available generators
14
+
15
+ The following list of generators are what is currently available in the `@aws/nx-plugin`:
16
+
17
+ <%_ generators.forEach((generator) => { _%>
18
+
19
+ - **<%- generator.name %>**: <%- generator.description %>
20
+ <%_ }); _%>
21
+
22
+ You also have the option of using additional [commmunity plugins](https://nx.dev/plugin-registry) as needed.
23
+
24
+ ## Invoking a generator
25
+
26
+ ```sh
27
+ <%= pkgMgrCmd %> nx g @aws/nx-plugin:<generator-name>
28
+ ```
29
+
30
+ Alternatively you can use the NX IDE plugin to invoke your generators.
31
+
32
+ Refer to the [full documentation](https://awslabs.github.io/nx-plugin-for-aws) for additional guidance for each generator.
33
+
34
+ ## Common tasks
35
+
36
+ ### Build a single project
37
+
38
+ ```sh
39
+ <%= pkgMgrCmd %> nx build <project-name>
40
+ ```
41
+
42
+ ### Build all projects
43
+
44
+ ```sh
45
+ <%= pkgMgrCmd %> nx run-many --target build --all
46
+ # or
47
+ <%= pkgMgrCmd %> build:all
48
+ ```
49
+
50
+ ### Run arbitrary task
51
+
52
+ ```sh
53
+ <%= pkgMgrCmd %> nx <target> <project-name>
54
+ ```
55
+
56
+ ### Lint (and fix) all projects
57
+
58
+ ```sh
59
+ <%= pkgMgrCmd %> nx run-many --target lint --configuration=fix --all
60
+ ```
61
+
62
+ ## Test all projects (and update snapshots)
63
+
64
+ ```sh
65
+ <%= pkgMgrCmd %> nx run-many --target test --all --update
66
+ ```
67
+
68
+ These targets are either [inferred automatically](https://nx.dev/concepts/inferred-tasks?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects) or defined in the `project.json` or `package.json` files.
69
+
70
+ [More about running tasks in the Nx docs &raquo;](https://nx.dev/features/run-tasks?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
71
+
72
+ ## Keep TypeScript project references up to date
73
+
74
+ Nx automatically updates TypeScript [project references](https://www.typescriptlang.org/docs/handbook/project-references.html) in `tsconfig.json` files to ensure they remain accurate based on your project dependencies (`import` statements). This sync is automatically done when running tasks such as `build`, which require updated references to function correctly.
75
+
76
+ To manually trigger the process to sync the project graph dependencies information to the TypeScript project references, run the following command:
77
+
78
+ ```sh
79
+ <%= pkgMgrCmd %> nx sync
80
+ ```
81
+
82
+ You can enforce that the TypeScript project references are always in the correct state when running in CI by adding a step to your CI job configuration that runs the following command:
83
+
84
+ ```sh
85
+ <%= pkgMgrCmd %> nx sync:check
86
+ ```
87
+
88
+ [Learn more about nx sync](https://nx.dev/reference/nx-commands#sync)
89
+
90
+ ## Set up CI!
91
+
92
+ Use the following command to configure a CI workflow for your workspace:
93
+
94
+ ```sh
95
+ <%= pkgMgrCmd %> nx g ci-workflow
96
+ ```
97
+
98
+ [Learn more about Nx on CI](https://nx.dev/ci/intro/ci-with-nx#ready-get-started-with-your-provider?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
99
+
100
+ ## Useful links
101
+
102
+ Learn more:
103
+
104
+ - [@aws/nx-plugin quick-start](https://awslabs.github.io/nx-plugin-for-aws/en/get_started/quick-start/)
105
+ - [@aws/nx-plugin AI dungeon game](https://awslabs.github.io/nx-plugin-for-aws/en/get_started/tutorials/dungeon-game/overview/)
106
+ - [What are Nx plugins?](https://nx.dev/concepts/nx-plugins?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
107
+ - [Learn about Nx on CI](https://nx.dev/ci/intro/ci-with-nx?utm_source=nx_project&utm_medium=readme&utm_campaign=nx_projects)
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { GeneratorCallback, Tree } from '@nx/devkit';
6
+ import { NxGeneratorInfo } from '../utils/nx';
7
+ import { PresetGeneratorSchema } from './schema';
8
+ export declare const PRESET_GENERATOR_INFO: NxGeneratorInfo;
9
+ export declare const presetGenerator: (tree: Tree, { addTsPlugin }: PresetGeneratorSchema) => Promise<GeneratorCallback>;
10
+ export default presetGenerator;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.presetGenerator = exports.PRESET_GENERATOR_INFO = void 0;
4
+ const tslib_1 = require("tslib");
5
+ /**
6
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
+ * SPDX-License-Identifier: Apache-2.0
8
+ */
9
+ const devkit_1 = require("@nx/devkit");
10
+ const nx_1 = require("../utils/nx");
11
+ const metrics_1 = require("../utils/metrics");
12
+ const format_1 = require("../utils/format");
13
+ const js_1 = require("@nx/js");
14
+ const package_json_1 = require("nx/src/utils/package-json");
15
+ const npm_scope_1 = require("../utils/npm-scope");
16
+ const generators_json_1 = tslib_1.__importDefault(require("../../generators.json"));
17
+ const WORKSPACES = ['packages/*'];
18
+ exports.PRESET_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
19
+ const setUpWorkspaces = (tree) => {
20
+ if ((0, devkit_1.detectPackageManager)() === 'pnpm') {
21
+ tree.write('pnpm-workspace.yaml', `packages:
22
+ ${WORKSPACES.map((workspace) => `- "${workspace}"`).join('\n ')}
23
+ `);
24
+ }
25
+ else {
26
+ (0, devkit_1.updateJson)(tree, 'package.json', (json) => {
27
+ json.workspaces = WORKSPACES;
28
+ return json;
29
+ });
30
+ }
31
+ };
32
+ const presetGenerator = (tree_1, _a) => tslib_1.__awaiter(void 0, [tree_1, _a], void 0, function* (tree, { addTsPlugin }) {
33
+ yield (0, js_1.initGenerator)(tree, {
34
+ formatter: 'prettier',
35
+ addTsPlugin: addTsPlugin !== null && addTsPlugin !== void 0 ? addTsPlugin : true,
36
+ });
37
+ tree.delete('apps/.gitkeep');
38
+ tree.delete('libs/.gitkeep');
39
+ tree.write('packages/.gitkeep', '');
40
+ setUpWorkspaces(tree);
41
+ (0, devkit_1.updateJson)(tree, 'package.json', (packageJson) => (Object.assign(Object.assign({}, packageJson), { type: 'module', scripts: Object.assign(Object.assign({}, packageJson.scripts), { 'build:all': 'nx run-many --target build --all', 'affected:all': 'nx affected --target build' }) })));
42
+ (0, devkit_1.addDependenciesToPackageJson)(tree, {}, {
43
+ '@nx/workspace': (0, package_json_1.readModulePackageJson)('@nx/js').packageJson.version,
44
+ });
45
+ (0, devkit_1.generateFiles)(tree, // the virtual file system
46
+ (0, devkit_1.joinPathFragments)(__dirname, 'files'), '.', {
47
+ projectName: (0, npm_scope_1.getNpmScope)(tree),
48
+ generators: Object.entries(generators_json_1.default.generators)
49
+ .filter(([_, v]) => !v['hidden'])
50
+ .map(([k, v]) => ({ name: k, description: v.description })),
51
+ pkgMgrCmd: (0, devkit_1.getPackageManagerCommand)().exec,
52
+ }, {
53
+ overwriteStrategy: devkit_1.OverwriteStrategy.Overwrite,
54
+ });
55
+ yield (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.PRESET_GENERATOR_INFO]);
56
+ yield (0, format_1.formatFilesInSubtree)(tree);
57
+ return () => {
58
+ (0, devkit_1.installPackagesTask)(tree);
59
+ };
60
+ });
61
+ exports.presetGenerator = presetGenerator;
62
+ exports.default = exports.presetGenerator;
63
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/preset/generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export interface PresetGeneratorSchema {
6
+ readonly addTsPlugin?: boolean;
7
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "preset",
4
+ "title": "preset",
5
+ "description": "The @aws/nx-plugin preset.",
6
+ "type": "object",
7
+ "properties": {
8
+ "addTsPlugin": {
9
+ "type": "boolean",
10
+ "description": "Whether to add the ts plugin.",
11
+ "default": "true"
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: () => Promise<void>;
2
+ export default _default;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ /**
5
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
+ * SPDX-License-Identifier: Apache-2.0
7
+ */
8
+ const devkit_1 = require("@nx/devkit");
9
+ // Global Setup https://vitest.dev/config/#globalsetup
10
+ exports.default = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
11
+ // Create the project graph in global setup to ensure it's cached in the daemon
12
+ yield (0, devkit_1.createProjectGraphAsync)();
13
+ });
14
+ //# sourceMappingURL=setup-tests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-tests.js","sourceRoot":"","sources":["../../../../packages/nx-plugin/src/setup-tests.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAAqD;AAErD,sDAAsD;AACtD,kBAAe,GAAS,EAAE;IACxB,+EAA+E;IAC/E,MAAM,IAAA,gCAAuB,GAAE,CAAC;AAClC,CAAC,CAAA,CAAC"}
@@ -140,6 +140,32 @@ exports[`ts lib generator > should generate library with custom directory > cust
140
140
  "
141
141
  `;
142
142
 
143
+ exports[`ts lib generator > should generate library with default options > eslint.config.mjs 1`] = `
144
+ "import baseConfig from '../eslint.config.mjs';
145
+
146
+ export default [
147
+ ...baseConfig,
148
+ {
149
+ files: ['**/*.json'],
150
+ rules: {
151
+ '@nx/dependency-checks': [
152
+ 'warn',
153
+ {
154
+ ignoredFiles: [
155
+ '{projectRoot}/eslint.config.{js,cjs,mjs}',
156
+ '{projectRoot}/vite.config.{js,ts,mjs,mts}',
157
+ ],
158
+ },
159
+ ],
160
+ },
161
+ languageOptions: {
162
+ parser: await import('jsonc-eslint-parser'),
163
+ },
164
+ },
165
+ ];
166
+ "
167
+ `;
168
+
143
169
  exports[`ts lib generator > should generate library with default options > index.ts 1`] = `
144
170
  "export function hello() {
145
171
  return 'Hello!';
@@ -16,6 +16,8 @@ const format_1 = require("../../utils/format");
16
16
  const object_1 = require("../../utils/object");
17
17
  const nx_1 = require("../../utils/nx");
18
18
  const metrics_1 = require("../../utils/metrics");
19
+ const ast_1 = require("../../utils/ast");
20
+ const typescript_1 = require("typescript");
19
21
  exports.TS_LIB_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
20
22
  /**
21
23
  * Returns details about the TS library to be created
@@ -111,6 +113,13 @@ const tsLibGenerator = (tree, schema) => tslib_1.__awaiter(void 0, void 0, void
111
113
  ];
112
114
  return nxJson;
113
115
  });
116
+ // change error to warn for the @nx/dependency-checks rule
117
+ (0, ast_1.replace)(tree, (0, devkit_1.joinPathFragments)(dir, 'eslint.config.mjs'), 'PropertyAssignment:has(Identifier[name="rules"]) ObjectLiteralExpression PropertyAssignment:has(StringLiteral[value="@nx/dependency-checks"]) ArrayLiteralExpression:has(StringLiteral[value="error"])', (node) => {
118
+ return typescript_1.factory.createArrayLiteralExpression([
119
+ typescript_1.factory.createStringLiteral('warn'),
120
+ ...node.elements.slice(1),
121
+ ]);
122
+ });
114
123
  yield (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.TS_LIB_GENERATOR_INFO]);
115
124
  yield (0, format_1.formatFilesInSubtree)(tree);
116
125
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/lib/generator.ts"],"names":[],"mappings":"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"}
@@ -118,7 +118,7 @@ export default [
118
118
  files: ['**/*.json'],
119
119
  rules: {
120
120
  '@nx/dependency-checks': [
121
- 'error',
121
+ 'warn',
122
122
  {
123
123
  ignoredFiles: [
124
124
  '{projectRoot}/eslint.config.{js,cjs,mjs}',