@nx/react:library
Create a React Library for an Nx workspace.
Create a React Library for an Nx workspace.
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 @nx/react:library ...
Show what will be generated without writing to disk:
nx g library ... --dry-run
Generate libs/myapp/mylib
:
nx g lib mylib --directory=myapp
Generate a library with routes and add them to myapp
:
nx g lib mylib --appProject=myapp
^[a-zA-Z].*$
Library name
none
none
, vite
, rollup
The bundler to use. Choosing 'none' means this library is not buildable.
A directory where the lib is placed.
The application project to add the library route to.
true
Generate a default component.
babel
babel
, swc
Which compiler to use. Only applies to bundler: 'rollup'
.
false
When true
, the stylesheet is generated using global CSS instead of CSS modules (e.g. file is *.css
rather than *.module.css
).
false
When using Vitest, separate spec files will not be generated and instead will be included within the source files.
The library name used to import it, like @myorg/my-awesome-lib
.
false
Generate JavaScript files rather than TypeScript files.
eslint
eslint
, none
The tool to use for running lint checks.
false
Create a React library with a minimal setup, no separate test files.
false
Use pascal case component file name (e.g. App.tsx
).
Create a publishable library.
Generate library with routes.
css
The file extension to be used for style files.
true
Whether to enable tsconfig strict mode or not.
false
Whether or not to configure the ESLint parserOptions.project
option. We do not do this by default for lint performance reasons.
Add tags to the library (used for linting).
jest
, vitest
, none
Test runner to use for unit tests.
false
Skip formatting files.
false
Do not update tsconfig.json
for development experience.
false
Do not add dependencies to package.json
.
false
Generate a buildable library that uses rollup to bundle.
Use the bundler
option for greater control (none, vite, rollup).