Node.js+TypeScriptで開発するときのセットアップ

前提

  • パッケージ管理ソフトウェア:npm
  • Node.jsバージョン:22 LTS

内容

Nest CLIのインストール

npm i -g @nestjs/cli # nestコマンドを使う

新規プロジェクトの作成(下記のいずれかを実行)

nest new <nestApp Project名> # 対話式でパッケージマネージャを選択
nest new <nestApp Project名> --strict # 型安全を高めたい場合

CLI が src/ ディレクトリと主要な 5 ファイル(app.controller.ts, app.service.ts, app.module.ts, main.ts, app.controller.spec.ts)を生成します。

生成されるディレクトリ構成

my-nest-app/
├─ src/
│ ├─ app.controller.ts
│ ├─ app.module.ts
│ ├─ app.service.ts
│ └─ main.ts
├─ test/ # E2E テスト
├─ package.json
└─ tsconfig*.json

開発サーバの起動

npm run start # 通常起動
npm run start:dev # ファイル変更を監視して自動リロード

start スクリプトは生成直後から利用でき、start:dev はウォッチモードで再コンパイル/再起動します。

package.jsonに自動追加される主なスクリプト

スクリプト役割
startnest start ― 通常起動
start:devnest start --watch ― ウォッチモード
start:prodnode dist/main.js ― 本番実行
buildnest build ― TypeScript を dist/ に吐き出す
test単体テスト(Jest)
test:e2eE2E テスト(Supertest + Jest)
lint / formatESLint と Prettier で品質チェック
(nest new 実行時に自動生成)

本番ビルド&実行フロー例

npm run build # dist/ に JS 出力
NODE_ENV=production npm run start:prod