Skip to content
compodocx
Skip to article content

Guide 12

Documentation Coverage

cngxjs (opens in new tab) Updated Guide 12 of 13

Every run produces a coverage report. The percentage of public symbols carrying at least a one-line description. Below the threshold, the CLI exits non-zero so CI can gate.

Gating in CI

bash
npx compodocx -p tsconfig.doc.json --coverageMinimum 80

Anything below 80% in the example above fails the build. Set the threshold based on the strictness you’re aiming for. Most projects start at 50% and move it up as gaps close.

What counts as documented

A public symbol counts as documented when its JSDoc block has a non-empty description on the first line. Tags alone (@param, @returns) do not satisfy the description requirement; they augment it. Members marked @internal are excluded entirely.

Coverage tab

The HTML output renders a Documentation Coverage tab on the project root: the overall percentage, breakdown by entity kind (components, directives, classes, interfaces, etc.), and a sortable list of undocumented symbols with deep links to their source.

Public-API filtering

When --publicApiOnly is set, coverage is computed against the allow-list. Internal symbols stop dragging the percentage down, and the report focuses on the surface consumers actually see.