docfy lint

Проверяет качество документации, а не только её наличие. Ловит неполные декораторы ApiOperation, ApiResponse и ApiBody, которые check и coverage пропустят.

Использование

bash
npx nestjs-docfy lint [options]

Параметры

OptionDefaultDescription
--root <path>.Project root directory
--tsconfig <path>auto-detectedPath to tsconfig.json
--pattern <glob>**/*.controller.tsGlob pattern to find controllers
--format <format>tsФормат docs-файлов, которые нужно искать: ts или js
--quietfalseSuppress all output except errors

Что проверяется

Для каждого метода, уже описанного в docs-файле:

  • ApiOperation без summary
  • Эндпоинты с параметром @Body() без ApiResponse на 400
  • Эндпоинты с параметром @Body(), у которых в ApiBody нет description

Контроллеры без companion-файла и методы, до которых документация вообще не дошла, остаются на совести check. lint судит только о качестве того, что уже написано.

Пример вывода

text
✖ POST /users
  Missing 400 response

✖ GET /users
  Missing operation summary

✖ PATCH /users/:id
  Missing request body description

✖ 3 issue(s) found.

При любой находке завершается с кодом 1. Сделано под CI, как и check.

.github/workflows/*.yml
# GitHub Actions example
- name: Lint documentation quality
  run: npx nestjs-docfy lint