JSDoc
#WIP
https://azukiazusa.dev/blog/jsdoc-typescript/
https://zenn.dev/qnighy/articles/56917d9bf9077b
https://deno.com/blog/document-javascript-package
deno
Writing documentation - Docs - JSR
jsr
symbol documentation
関数や変数など個別の要素に対するdocs
https://jsr.io/docs/writing-docs#symbol-documentation
{@link <ident>}でリンクを付けられる
JSRで生成されたdocs上でクリックしてその先に遷移できるリンクになる
code:ts
/** {@link search} メソッドに渡すオプションバッグです。 */
export interface SearchOptions {
/** 検索から返すアイテムの最大数。指定しない場合、デフォルトは50です。 */
limit?: number;
/** 指定された数のアイテムをスキップします。これによりページネーションを実装できます。指定しない場合、デフォルトは0(スキップしない)です。 */
skip?: number;
/** {@link search} 関数がユーザーに警告を表示する必要がある場合に呼び出される関数です。指定しない場合、警告は静かに無視されます。 */
reportWarning?(message: string): void;
}
module documentation
module自体に対するdocs
https://jsr.io/docs/writing-docs#module-documentation
基本的に、ファイルの先頭にかく
@moduleを含める
code:ts
/**
* このモジュールにはデータベースを検索するための関数が含まれています。
* @module
*/
/** {@link search} メソッドに渡すオプションバッグです。 */
export interface SearchOptions {}
...
例を含める
code:ts
/**
* @example
* `ts
* import { search } from "@luca/search";
*
* search("Alan") // "Alan Turing", "Alan Kay", ...
* `
*/