TL;DR

NestJS のコマンドラインツール。プロジェクトの作成や、Module、Resolver、Service などのファイルの生成を行う。

仕組み

npm i -g @nestjs/cli でインストールし、nest new <プロジェクト名> でプロジェクトを作る。

nest generate(省略形は nest g)でファイルを生成する。

  • nest g module <名前>: Feature module を生成する。src/<名前>/<名前>.module.ts が作られ、Root module(app.module.ts)の imports に追加される
  • nest g resolver <名前>: GraphQL の Resolver を生成する。src/<名前>/<名前>.resolver.ts とテストファイル(.resolver.spec.ts)が作られ、Feature module に追加される
  • nest g service <名前>: Service を生成する。src/<名前>/<名前>.service.ts とテストファイル(.service.spec.ts)が作られ、Feature module に追加される

テストファイルが不要なときは --no-spec を付ける。

例

nest new で生成されるファイルは次のとおり。

$ tree -I 'node_modules|dist|.git'
.
├── README.md
├── nest-cli.json
├── package-lock.json
├── package.json
├── src
│   ├── app.controller.spec.ts
│   ├── app.controller.ts
│   ├── app.module.ts
│   ├── app.service.ts
│   └── main.ts
├── test
│   ├── app.e2e-spec.ts
│   └── jest-e2e.json
├── tsconfig.build.json
└── tsconfig.json

関連

出典