@nx/node:library

Create a Node Library for an Nx workspace.

Usage

1nx generate library ... 2
1nx g lib ... #same 2

By default, Nx will search for library in the default collection provisioned in workspace.json.

You can specify the collection explicitly as follows:

1nx g @nx/node:library ... 2

Show what will be generated without writing to disk:

1nx g library ... --dry-run 2

Examples

Generate libs/myapp/mylib:

1nx g lib mylib --directory=myapp 2

Options

directory

dirRequired
string

A directory where the lib is placed

buildable

boolean
Default: false

Generate a buildable library.

compiler

string
Default: tsc
Accepted values: tsc, swc

The compiler used by the build and test targets.

linter

string
Default: none
Accepted values: eslint, none

The tool to use for running lint checks.

name

string
Pattern: (?:^@[a-zA-Z0-9-*~][a-zA-Z0-9-*._~]*\\/[a-zA-Z0-9-~][a-zA-Z0-9-._~]*|^[a-zA-Z][^:]*)$

Library name

publishable

boolean

Create a publishable library.

unitTestRunner

string
Default: none
Accepted values: jest, none

Test runner to use for unit tests.

babelJest

boolean
Default: false

Use babel instead of ts-jest.

importPath

string

The library name used to import it, like @myorg/my-awesome-lib. Must be a valid npm name.

js

boolean
Default: false

Generate JavaScript files rather than TypeScript files.

rootDir

string

Sets the rootDir for TypeScript compilation. When not defined, it uses the project's root property, or srcRootForCompilationRoot if it is defined.

simpleModuleName

boolean
Default: false

Keep the module name simple.

strict

boolean
Default: false

Whether to enable tsconfig strict mode or not.

setParserOptionsProject

boolean
Default: false

Whether or not to configure the ESLint parserOptions.project. We do not do this by default for lint performance reasons.

tags

t
string

Add tags to the library (used for linting).

testEnvironment

string
Default: jsdom
Accepted values: jsdom, node

The test environment to use if unitTestRunner is set to jest.

skipFormat

Internal
boolean
Default: false

Skip formatting files.

skipTsConfig

Internal
boolean
Default: false

Do not update tsconfig.base.json for development experience.

standaloneConfig

Deprecated
boolean
Default: true

Split the project configuration into <projectRoot>/project.json rather than including it inside workspace.json.

Nx only supports standaloneConfig