【タイプドック】

TypeDoc とは?

最終更新:
💡 コードの型とコメントから、APIの説明を生成する

TypeScriptのソースコードの型情報や説明コメントを基に、APIドキュメントを生成するツール。公開する入口となるファイルなどを指定し、HTMLやJSONモデルとして出力できる。

📌 このページのポイント
型とコメントを、APIの説明へ TypeScriptソース(例) /** ユーザーを取得 */ getUser(id: number): User 公開する入口・型情報・説明コメント TypeDoc 解析・文書化 生成するAPIドキュメント getUser 引数 id: number / 戻り値 User 説明:ユーザーを取得 本体:HTML / JSON Markdown出力:プラグインを使用
入力と生成結果を簡略化した例。出力先・対象範囲などを設定し、生成後の説明も確認する。
ひよこ ひよこ
TypeDocって何をしてくれるの?
ペンギン先生 ペンギン先生
TypeScriptのソースを基に、公開する関数やクラス、型などのAPIドキュメントを作るよ。型情報と説明コメントをまとめ、利用者が引数や戻り値などを確認できる形にするんだ。
ひよこ ひよこ
コメントを書かなくても全部説明してくれる?
ペンギン先生 ペンギン先生
型などから分かる情報は取り出せるけれど、処理の目的や使い方が自動で補われるわけではないよ。既定では/**から始まる説明コメントを読むので、型だけでは伝わらないことを書いておこう。
ひよこ ひよこ
どうやって使うの?
ペンギン先生 ペンギン先生
例えばnpm install --save-dev typedocで導入し、npx typedoc src/index.tsのように入口を指定するよ。入口のファイルがexportするものをたどって文書化する。実行にはプロジェクトのTypeScript設定なども関係するんだ。
ひよこ ひよこ
何の形式で出力できるの?
ペンギン先生 ペンギン先生
本体の出力はHTMLとJSONだよ。出力先やテーマなどを設定できる。Markdown形式で出したい場合はtypedoc-plugin-markdownのようなプラグインを使うので、本体だけの機能とは分けて考えよう。
ひよこ ひよこ
複数パッケージのプロジェクトでも使える?
ペンギン先生 ペンギン先生
本体のentryPointStrategyをpackagesにする方法があるよ。各パッケージを変換し、まとめて出力する。パッケージごとの設定場所にも注意しよう。生成した文書は、説明の不足や公開したい範囲を確認してから使うんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「TypeDoc」って出てきたら「TypeScriptのコードとコメントからAPIドキュメントを生成するツール」と思えばだいたいOK!
📖 おまけ:英語の意味
「TypeDoc」 = TypeScriptのドキュメント生成ツールの名前
💬 TypeScriptの型情報を活かして、関数などの使い方を読むための文書を作るツールだよ。型だけで分からない目的や注意点は、説明コメントで補うんだ。

参考資料

← 用語集にもどる