Skip to content

nestjs-command simplifies creating and managing CLI commands in NestJS applications. It offers an easy way to define and execute commands, streamlining CLI integration and boosting productivity with minimal configuration.

Notifications You must be signed in to change notification settings

hodfords-solutions/nestjs-command

Repository files navigation

Hodfords Logo

nestjs-command simplifies creating and managing CLI commands in NestJS applications. It offers an easy way to define and execute commands, streamlining CLI integration and boosting productivity with minimal configuration.

Installation 🤖

Install the nestjs-command package with:

npm install @hodfords/nestjs-command --save

Set up in your codebase:

  • src/config/command.config.ts
import { CommandModule } from '@hodfords/nestjs-command';

export const commandConfig = CommandModule.register();

// export const = CommandModule.register(false) if typeorm is disabled
  • src/app.module.ts
import { Module } from '@nestjs/common';
import { CommandModule } from '@hodfords/nestjs-command';

@Module({
    imports: [commandConfig],
    controllers: [],
    providers: []
})
export class AppModule {}
  • src/cli.ts
import { NestFactory } from '@nestjs/core';
import { CommandService } from '@hodfords/nestjs-command';
import { commandConfig } from '~config/command.config';

async function bootstrap() {
    const app = await NestFactory.create(AppModule);
    const commandService: CommandService = app.select(commandConfig).get(CommandService, { strict: true });
    await commandService.exec();
    await app.close();
}

bootstrap();
  • package.json
"wz-command": "wz-command"

Usage 🚀

Here’s how you can use them. For each type of component, you can use one of the two available command formats: with npm run or directly with wz-command

Make a command

npm run wz-command make-command <file-name> -- --module <module-name>
wz-command make-command <file-name> --module <module-name>

Make a controller

npm run wz-command make-controller <file-name> -- --module <module-name>
wz-command make-controller <file-name> --module <module-name>

Make a dto

npm run wz-command make-dto <file-name> -- --module <module-name>
wz-command make-dto <file-name> --module <module-name>

Make an e2e test

npm run wz-command make-e2e-test <file-name> -- --module <module-name>
wz-command make-e2e-test <file-name> --module <module-name>

Make an entity

npm run wz-command make-entity <file-name> -- --module <module-name>
wz-command make-entity <file-name> --module <module-name>

Make a migration

Create table

npm run wz-command make-migration <file-name> -- --module <module-name> --create=<entity-name>
wz-command make-migration <file-name> --module <module-name> --create=<entity-name>

Update table

npm run wz-command make-migration <file-name> -- --module <module-name> --update=<entity-name>
wz-command make-migration <file-name> --module <module-name> --update=<entity-name>

Make a module

npm run wz-command make-module <module-name>
wz-command make-module <file-name>

Make a repository

npm run wz-command make-repository <file-name> -- --module <module-name>
wz-command make-repository <file-name> --module <module-name>

Make a service

npm run wz-command make-service <file-name> -- --module <module-name>
wz-command make-service <file-name> --module <module-name>

License 📝

This project is licensed under the MIT License

About

nestjs-command simplifies creating and managing CLI commands in NestJS applications. It offers an easy way to define and execute commands, streamlining CLI integration and boosting productivity with minimal configuration.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published