{ "name": "application", "factory": "./src/generators/application/application", "schema": { "$schema": "https://json-schema.org/schema", "$id": "GeneratorNxApp", "title": "Creates an Angular application.", "description": "Creates an Angular application.", "type": "object", "cli": "nx", "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": { "description": "The name of the application.", "type": "string", "pattern": "^[a-zA-Z][^:]*$", "x-priority": "important" }, "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 ]" } ] } }, "routing": { "type": "boolean", "description": "Enable routing for the application.", "default": true, "x-priority": "important" }, "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.", "default": "app", "alias": "p" }, "skipTests": { "description": "Skip creating spec files.", "type": "boolean", "default": false, "alias": "S" }, "skipFormat": { "description": "Skip formatting files.", "type": "boolean", "default": false, "x-priority": "internal" }, "skipPackageJson": { "type": "boolean", "default": false, "description": "Do not add dependencies to `package.json`.", "x-priority": "internal" }, "unitTestRunner": { "type": "string", "enum": ["jest", "vitest", "none"], "description": "Test runner to use for unit tests.", "x-prompt": "Which unit test runner would you like to use?", "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" }, "port": { "type": "number", "description": "The port at which the remote application should be served." }, "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 }, "standalone": { "description": "Generate an application that is setup to use standalone components.", "type": "boolean", "default": true, "x-priority": "important" }, "rootProject": { "description": "Create an application at the root of the workspace.", "type": "boolean", "default": false, "hidden": true, "x-priority": "internal" }, "minimal": { "description": "Generate a Angular app with a minimal setup.", "type": "boolean", "default": false }, "bundler": { "description": "Bundler to use to build the application.", "type": "string", "enum": ["esbuild", "webpack"], "default": "esbuild", "x-prompt": "Which bundler do you want to use to build the application?", "x-priority": "important" }, "ssr": { "description": "Creates an application with Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering) enabled.", "type": "boolean", "x-prompt": "Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)?", "default": false }, "serverRouting": { "description": "Creates a server application using the Server Routing and App Engine APIs (Developer Preview). _Note: this is only supported in Angular versions >= 19.0.0_.", "type": "boolean" } }, "additionalProperties": false, "required": ["directory"], "examplesFile": "## Examples\n\n{% tabs %}\n{% tab label=\"Simple Application\" %}\n\nCreate an application named `my-app`:\n\n```bash\nnx g @nx/angular:application apps/my-app\n```\n\n{% /tab %}\n\n{% tab label=\"Specify style extension\" %}\n\nCreate an application named `my-app` in the `my-dir` directory and use `scss` for styles:\n\n```bash\nnx g @nx/angular:app my-dir/my-app --style=scss\n```\n\n{% /tab %}\n\n{% tab label=\"Single File Components application\" %}\n\nCreate an application with Single File Components (inline styles and inline templates):\n\n```bash\nnx g @nx/angular:app apps/my-app --inlineStyle --inlineTemplate\n```\n\n{% /tab %}\n\n{% tab label=\"Set custom prefix and tags\" %}\n\nSet the prefix to apply to generated selectors and add tags to the application (used for linting).\n\n```bash\nnx g @nx/angular:app apps/my-app --prefix=admin --tags=scope:admin,type:ui\n```\n\n{% /tab %}\n{% /tabs %}\n", "presets": [] }, "aliases": ["app"], "x-type": "application", "description": "Creates an Angular application.", "implementation": "/packages/angular/src/generators/application/application.ts", "hidden": false, "path": "/packages/angular/src/generators/application/schema.json", "type": "generator" }