{ "name": "library", "factory": "./src/generators/library/library", "schema": { "$schema": "http://json-schema.org/schema", "cli": "nx", "$id": "NxNodeLibrary", "title": "Create a Node Library for Nx", "description": "Create a Node Library for an Nx workspace.", "type": "object", "examples": [ { "command": "nx g lib mylib --directory=myapp", "description": "Generate `libs/myapp/mylib`" } ], "properties": { "name": { "type": "string", "description": "Library name", "$default": { "$source": "argv", "index": 0 }, "x-prompt": "What name would you like to use for the library?" }, "directory": { "type": "string", "description": "A directory where the lib is placed", "alias": "dir" }, "simpleModuleName": { "description": "Keep the module name simple (when using `--directory`).", "type": "boolean", "default": false }, "linter": { "description": "The tool to use for running lint checks.", "type": "string", "enum": ["eslint"], "default": "eslint" }, "unitTestRunner": { "type": "string", "enum": ["jest", "none"], "description": "Test runner to use for unit tests.", "default": "jest" }, "tags": { "type": "string", "description": "Add tags to the library (used for linting).", "alias": "t" }, "skipFormat": { "description": "Skip formatting files.", "type": "boolean", "default": false, "x-priority": "internal" }, "skipTsConfig": { "type": "boolean", "default": false, "description": "Do not update `tsconfig.base.json` for development experience.", "x-priority": "internal" }, "publishable": { "type": "boolean", "description": "Create a publishable library.", "x-priority": "important" }, "buildable": { "type": "boolean", "default": false, "description": "Generate a buildable library.", "x-priority": "important" }, "compiler": { "type": "string", "enum": ["tsc", "swc"], "default": "tsc", "description": "The compiler used by the build and test targets.", "x-priority": "important" }, "importPath": { "type": "string", "description": "The library name used to import it, like `@myorg/my-awesome-lib`. Must be a valid npm name." }, "rootDir": { "type": "string", "description": "Sets the `rootDir` for TypeScript compilation. When not defined, it uses the project's root property, or `srcRootForCompilationRoot` if it is defined." }, "testEnvironment": { "type": "string", "enum": ["jsdom", "node"], "description": "The test environment to use if `unitTestRunner` is set to `jest`.", "default": "jsdom" }, "babelJest": { "type": "boolean", "description": "Use `babel` instead of `ts-jest`.", "default": false }, "pascalCaseFiles": { "type": "boolean", "description": "Use pascal case file names.", "alias": "P", "default": false }, "js": { "type": "boolean", "description": "Generate JavaScript files rather than TypeScript files.", "default": false }, "strict": { "type": "boolean", "description": "Whether to enable tsconfig strict mode or not.", "default": false }, "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`. We do not do this by default for lint performance reasons.", "default": false } }, "required": ["name"], "presets": [] }, "aliases": ["lib"], "x-type": "library", "description": "Create a node library.", "implementation": "/packages/node/src/generators/library/library.ts", "hidden": false, "path": "/packages/node/src/generators/library/schema.json", "type": "generator" }