{ "name": "remote", "factory": "./src/generators/remote/remote", "schema": { "$schema": "https://json-schema.org/schema", "$id": "NxMFRemote", "cli": "nx", "title": "Nx Module Federation Remote App", "description": "Create an Angular Remote Module Federation Application.", "type": "object", "examples": [ { "command": "nx g @nx/angular:remote appName --host=host --port=4201", "description": "Create an Angular app with configuration in place for Module Federation. If host is provided, attach this remote app to host app's configuration." } ], "properties": { "directory": { "description": "The directory of the new application.", "type": "string", "$default": { "$source": "argv", "index": 0 }, "x-prompt": "Which directory do you want to create the application in?" }, "name": { "type": "string", "description": "The name to give to the remote Angular app.", "pattern": "^[a-zA-Z][^:]*$", "x-priority": "important" }, "host": { "type": "string", "description": "The name of the host app to attach this remote app to.", "x-dropdown": "projects", "x-priority": "important" }, "port": { "type": "number", "description": "The port on which this app should be served." }, "style": { "description": "The file extension to be used for style files.", "type": "string", "default": "css", "enum": ["css", "scss", "sass", "less"], "x-prompt": { "message": "Which stylesheet format would you like to use?", "type": "list", "items": [ { "value": "css", "label": "CSS" }, { "value": "scss", "label": "SASS(.scss) [ https://sass-lang.com ]" }, { "value": "sass", "label": "SASS(.sass) [ https://sass-lang.com ]" }, { "value": "less", "label": "LESS [ https://lesscss.org ]" } ] } }, "inlineStyle": { "description": "Specifies if the style will be in the ts file.", "type": "boolean", "default": false, "alias": "s" }, "inlineTemplate": { "description": "Specifies if the template will be in the ts file.", "type": "boolean", "default": false, "alias": "t" }, "viewEncapsulation": { "description": "Specifies the view encapsulation strategy.", "enum": ["Emulated", "None", "ShadowDom"], "type": "string" }, "prefix": { "type": "string", "format": "html-selector", "description": "The prefix to apply to generated selectors.", "alias": "p" }, "skipTests": { "description": "Skip creating spec files.", "type": "boolean", "default": false, "alias": "S" }, "skipPackageJson": { "type": "boolean", "default": false, "description": "Do not add dependencies to `package.json`.", "x-priority": "internal" }, "unitTestRunner": { "type": "string", "enum": ["jest", "none"], "description": "Test runner to use for unit tests.", "default": "jest" }, "e2eTestRunner": { "type": "string", "enum": ["playwright", "cypress", "none"], "description": "Test runner to use for end to end (E2E) tests.", "x-prompt": "Which E2E test runner would you like to use?", "default": "playwright" }, "tags": { "type": "string", "description": "Add tags to the application (used for linting)." }, "linter": { "description": "The tool to use for running lint checks.", "type": "string", "enum": ["eslint", "none"], "default": "eslint" }, "backendProject": { "type": "string", "description": "Backend project that provides data to this application. This sets up `proxy.config.json`." }, "strict": { "type": "boolean", "description": "Create an application with stricter type checking and build optimization options.", "default": true }, "standaloneConfig": { "description": "Split the project configuration into `/project.json` rather than including it inside `workspace.json`.", "type": "boolean", "default": true, "x-deprecated": "Nx only supports standaloneConfig" }, "setParserOptionsProject": { "type": "boolean", "description": "Whether or not to configure the ESLint `parserOptions.project` option. We do not do this by default for lint performance reasons.", "default": false }, "addTailwind": { "type": "boolean", "description": "Whether to configure Tailwind CSS for the application.", "default": false }, "skipFormat": { "description": "Skip formatting files.", "type": "boolean", "default": false, "x-priority": "internal" }, "standalone": { "description": "Whether to generate a remote application with standalone components.", "type": "boolean", "default": true }, "ssr": { "description": "Whether to configure SSR for the remote application to be consumed by a host application using SSR.", "type": "boolean", "default": false }, "typescriptConfiguration": { "type": "boolean", "description": "Whether the module federation configuration and webpack configuration files should use TS.", "default": true } }, "additionalProperties": false, "required": ["directory"], "presets": [] }, "x-type": "application", "description": "Generate a Remote Angular Module Federation Application.", "implementation": "/packages/angular/src/generators/remote/remote.ts", "aliases": [], "hidden": false, "path": "/packages/angular/src/generators/remote/schema.json", "type": "generator" }