サイト内の全ページをまとめた印刷用ページを追加し、PDFや単体HTMLとして簡単に出力できるMkDocsプラグイン。
mkdocstrings/mkdocstrings
言語別ハンドラーを使い、ソースコードのdocstringからAPIリファレンスを生成するMkDocsプラグインです。
- スター
- 2,102
- フォーク
- 126
- 未解決の Issue
- 0
- 最終コミット
- 15 日前
これは何?
mkdocstringsは、ソースコードからAPIリファレンスのページを生成するMkDocsプラグインです。リファレンスページを手作業で作成する代わりに、Markdownファイルへ短い`:::`ディレクティブでドキュメント化したオブジェクトを指定すると、プラグインがそのdocstringを収集してサイトにレンダリングします。
コアパッケージは言語に依存しません。言語サポートは個別のハンドラーが担い、プロジェクトではC、Crystal、GitHub Actions、Python、MATLAB、TypeScript、VBA、シェルスクリプト向けの公式ハンドラーが案内されています。ハンドラーごとに独自のテーマを利用でき、主な選択肢はMaterialテーマです。Pythonハンドラーでは、ReadTheDocsテーマとMkDocsテーマも基本的にサポートしています。
異なるページの見出し間の相互参照にも対応しており、Sphinxのintersphinxと同様に、インベントリを使って別プロジェクトの項目も参照できます。ハンドラーは`mkdocs.yml`で全体設定することも、各挿入ブロックで個別に設定することもできます。
主な機能
- 01`:::`ディレクティブを使って、MarkdownページにAPIドキュメントを挿入できます。
- 02Python、TypeScript、Cなど、個別のハンドラーを通じて複数の言語に対応しています。
- 03Materialテーマに加え、PythonではReadTheDocsテーマとMkDocsテーマも基本的に利用できます。
- 04ページ間の見出しや外部プロジェクトへの相互参照に対応しています。
- 05全体設定と挿入ブロックごとの設定が可能です。
ユースケース
- 既存のMkDocsドキュメントサイト内に、PythonライブラリのAPIリファレンスを生成する。
- MkDocsで、解説ドキュメントと併せてTypeScriptやCのコードベースをドキュメント化する。
- 公開されたインベントリを使って、ほかのライブラリのAPI項目へリンクする。
クイックスタート
- 1
Python handler と一緒に mkdocstrings をインストールする
pip install 'mkdocstrings[python]' - 2
mkdocs.yml に mkdocstrings プラグインを追加する
- 3
Markdown ファイルに ::: identifier の行を使って API リファレンスを挿入する
使う前に知っておきたいこと
- 基本パッケージ単体ではどの言語にも対応しておらず、別途言語 handler をインストールする必要があります。
収録されている特集
トピック
よくある質問
- mkdocstrings とは?
- 言語別ハンドラーを使い、ソースコードのdocstringからAPIリファレンスを生成するMkDocsプラグインです。 mkdocstringsは、ソースコードからAPIリファレンスのページを生成するMkDocsプラグインです。リファレンスページを手作業で作成する代わりに、Markdownファイルへ短い`:::`ディレクティブでドキュメント化したオブジェクトを指定すると、プラグインがそのdocstringを収集してサイトにレンダリングします。
- mkdocstrings は無料で使えますか?ライセンスは?
- mkdocstrings は ISC ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- mkdocstrings は今もメンテナンスされていますか?
- 活発にメンテナンス中。mkdocstrings の最終コミットは 2026年10月23日 です。
- mkdocstrings は何に使えますか?
- 既存のMkDocsドキュメントサイト内に、PythonライブラリのAPIリファレンスを生成する。 MkDocsで、解説ドキュメントと併せてTypeScriptやCのコードベースをドキュメント化する。 公開されたインベントリを使って、ほかのライブラリのAPI項目へリンクする。
- mkdocstrings のインストール方法は?
- Python handler と一緒に mkdocstrings をインストールする: pip install 'mkdocstrings[python]' mkdocs.yml に mkdocstrings プラグインを追加する Markdown ファイルに ::: identifier の行を使って API リファレンスを挿入する
- mkdocstrings はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/mkdocstrings/mkdocstrings
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Markdownファイルから、検索可能でレスポンシブな静的ドキュメントサイトを生成するMkDocs向けMaterial Designテーマ。
Jupyter NotebookやJupytextの.pyファイルをドキュメントページに変換し、任意で実行やテーマ適用もできるMkDocsプラグインです。
Doxygenで生成したC/C++ APIドキュメントをreStructuredTextやSphinxのドキュメントに取り込むSphinxプラグイン。
Pythonの型ヒントをautodocの引数・戻り値フィールドに反映し、型へのリンクやスタブファイルにも対応するSphinx拡張です。
特別な設定なしで、モジュール、パッケージ、docstringからPython 3プロジェクトのAPIドキュメントを自動生成します。