Nx Angular generators wrapper that mimics the old 'derived' behavior for component generation.
npm install @jcendal/nx-angular-generators-derivedA wrapper for Angular generators in Nx that simplifies component and other
element creation, maintaining compatibility with the previous "derived"
behavior.
- Simplifies Nx Angular generator syntax
- Supports component, library, and other Angular generators
- Automatically duplicates the last path segment for component name
- Automatically adds .module.ts to module names
- Compatible with Nx 20+
``bash`
npm install @jcendal/nx-angular-generators-derived
Instead of using the full Nx command:
`bash`
npx nx g @nx/angular:component libs/shared/ui/toasts/src/lib/component-name/component-name --name=component-name --module=ui-toasts.module.ts
You can use the simplified syntax:
`bash`
npm run g component libs/shared/ui/toasts/src/lib/component-name --module=ui-toasts
Instead of using the full Nx command:
`bash`
npx nx g @nx/angular:library libs/shared/asd
You can use the simplified syntax:
`bash`
npm run g library libs/shared/asd
With import path prefix (optional):
`bash`
npm run g library libs/shared/library --importPathPrefix=@myorg
This will be converted to --importPath=@myorg/shared/library in the Nx commandlibs/
(prefix + path without ). If --importPathPrefix is not provided or is--importPath
empty, no option will be added to the command.
The wrapper automatically converts:
- Input: npm run g component npx nx g @nx/angular:component
- Output:
- Input: npm run g library npx nx g @nx/angular:library
- Output:
- Input: npm run g library npx nx g @nx/angular:library
- Output:
`bashSimplified command for component
npm run g component libs/shared/ui/toasts/src/lib/component-name --module=ui-toasts
🛠 API
$3
The
g script accepts the following arguments:-
: Generator type (e.g., component, library, service,
etc.)
- : Path where the element will be generated
- [--option=value]: Additional options for the generator$3
- Components and other generators: Automatically duplicates the last path
segment and adds
--name option
- Library: Uses the path as-is without modification
- --module option: Automatically adds .module.ts to the end of the
module name
- --importPathPrefix option (library only, optional): If provided and
non-empty, combines the prefix with the path (without libs/) to create
--importPath. Example: libs/shared/library with prefix @myorg becomes
@myorg/shared/library. If not provided or empty, no --importPath option is
added.⚙️ Configuration
Make sure you have
@nx/angular installed in your Nx project:`bash
npm install -D @nx/angular
``MIT – Feel free to use, modify, and distribute.