Scan
Know the gap first
scan --classify counts exports with valid TSDoc, partial docs, line comments or none, before anything is changed.
A CLI that converts JSDoc comments to TSDoc, stubs the documentation that is missing, and fails CI when the gap comes back.
npx jsdoc-to-tsdoc init01 · Why
Scan
scan --classify counts exports with valid TSDoc, partial docs, line comments or none, before anything is changed.
Convert
convert turns JSDoc into TSDoc. The examples on this site are before and after taken from real runs.
Scaffold
scaffold adds a TSDoc stub to every export that has none, ready to fill in.
Gate
check fails the build when TSDoc is invalid or missing. Use it as a GitHub Action or a Bitbucket pipe.
02 · Docs
One page per command, the concepts behind them, and the CLI reference.
What jsdoc-to-tsdoc does, the six commands and the order to run them in, and how to use it without installing anything.
The concepts behind the migration, every difference between the two comment styles, and why each one exists.
Bootstrap a project for TSDoc, generating tsdoc.json and patching the ESLint flat config without touching source comments.
Inventory the JSDoc a migration would touch, or classify how well every export is documented, without writing anything.
Rewrite existing JSDoc comments into TSDoc with deterministic, formatting-preserving transformations, and what each rule does.
Generate a TSDoc stub for every export that has no documentation, with summaries inferred from names and a TODO marker on each one.
03 · Tutorials
Guided walkthroughs, from the first migration to a CI gate that holds.
A hands-on walkthrough of the whole workflow, init, scan, convert, scaffold and check, on a small project, with the real output of every command.
Turn the TODO markers that scaffold left into documentation people will actually read, and know when a generated summary is good enough.
Run check on every pull request, start with a gate the project can pass today, tighten it as the migration progresses, and learn to read a failing run.
Turn missing documentation from a warning into a build failure, with a preflight that keeps you from breaking the build, and a merge driver for the one line that conflicts.
04 · Examples
Before and after, taken from real runs of the CLI.
A typical JSDoc comment on an async function, converted line by line to TSDoc, with the reason for each change.
Why a bare @example breaks the TSDoc parser, and how convert fences only the bodies that need it.
How a JSDoc @typedef with @property tags becomes an interface whose members carry their own documentation, without losing any prose.
When a developer explained an export with // comments, convert can turn that prose into the doc comment it was already acting as.
What scaffold generates for components, interfaces and functions, and how the marker makes the review a search.
A field guide to the rule ids that check reports most often, what each one means, and the one-line fix.