docfy generate

Scanne ton projet et génère un *.controller.docs.ts pré-rempli pour chaque contrôleur, en analyse statique uniquement, sans exécuter le code du projet.

Usage

bash
npx nestjs-docfy generate [options]

Options

OptionDefaultDescription
--root <path>.Project root directory
--tsconfig <path>auto-detectedPath to tsconfig.json
--pattern <glob>**/*.controller.tsGlob pattern to find controllers
--out <path>alongside each controllerOutput directory for generated files
--forcefalseMerge new methods into existing docs files (preserves user edits)
--overwritefalseDiscard existing docs file content and regenerate it from scratch (takes precedence over --force)
--dry-runfalsePrint what would be generated without writing files
--quietfalseSuppress all output except errors (CI-friendly)
--formattsOutput format: ts or js
--watchfalseRe-generate on controller file changes
--register-pluginfalseIf webpack: true is set without the CLI plugin, add nestjs-docfy to nest-cli.json's compilerOptions.plugins. See The CLI plugin.

Types de projet

Le CLI détecte automatiquement la structure de ton projet, sans configuration nécessaire :

LayoutDetected when
Simple projecttsconfig.json at root, no monorepo markers
Nx monoreponx.json present
Nest CLI monoreponest-cli.json with "monorepo": true
Generic monorepopackages/ or apps/ with sub-package.json files

Idempotence : --force vs --overwrite

ScenarioBehavior
Run generate on a clean projectCreates all docs files
Run generate again (no changes)Skips all existing files, safe to run repeatedly
Add a new endpoint, run generate --forceMerges new method block, preserves existing arrays
Edit a method's decorators, run --forceYour edits are preserved
Run generate --overwriteDiscards the file entirely, regenerates from scratch

Script npm

Ajoute-le à ton package.json pour plus de confort :

json
{
  "scripts": {
    "docs:generate": "nestjs-docfy generate",
    "docs:preview": "nestjs-docfy generate --dry-run"
  }
}