Deprecated

Use @nrwl/js:lib instead. This will be removed in Nx v16.

@nrwl/workspace:library

Create a TypeScript Library.

Usage

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

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

You can specify the collection explicitly as follows:

nx g @nrwl/workspace:library ...

Show what will be generated without writing to disk:

nx g library ... --dry-run

Examples

Generate libs/myapp/mylib:

nx g lib mylib --directory=myapp

Options

name

Required
string
Pattern: ^[a-zA-Z].*$

Library name.

directory

string

A directory where the lib is placed.

importPath

string

The library name used to import it, like @myorg/my-awesome-lib.

babelJest

boolean
Default: false

Use babel instead ts-jest.

buildable

boolean
Default: false

Generate a buildable library.

js

boolean
Default: false

Generate JavaScript files rather than TypeScript files.

linter

string
Default: eslint
Accepted values: eslint

The tool to use for running lint checks.

pascalCaseFiles

P
boolean
Default: false

Use pascal case file names.

skipTsConfig

boolean
Default: false

Do not update tsconfig.json for development experience.

strict

boolean
Default: true

Whether to enable tsconfig strict mode or not.

skipBabelrc

boolean
Default: false

Do not generate .babelrc file. Useful for Node libraries that are not compiled by Babel.

setParserOptionsProject

boolean
Default: false

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

tags

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.

unitTestRunner

string
Default: jest
Accepted values: jest, none

Test runner to use for unit tests.

skipFormat

boolean
Default: false

Skip formatting files.

standaloneConfig

Deprecated
boolean
Default: true

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

Nx only supports standaloneConfig