Skip to content

es‐toolkit compat への貢献

Sojin Park edited this page Mar 21, 2025 · 1 revision

es-toolkit ライブラリへの貢献にようこそ!

lodashからの移行を容易にするために、es-toolkit/compat互換レイヤーを作成しています。この互換レイヤーは、lodashと完全に同じ動作をするライブラリを作ることを目指しています。どのように貢献できるかをご説明します。

1. 実装する関数を選んでください

このGitHub Issueで、まだ担当者がいない関数を探してください。サブイシューの領域で、まだ実装が必要な関数を見つけることができます。 find-a-function

2. 関数の動作を理解してください

すぐに実装に入る前に、各関数がどのように動作するかを明確に理解する必要があります。以下の資料を参考にしてください:

Lodash v5-wip ブランチのテストコードは、{関数名}.test.jsという名前で書かれています。関数の動作を理解するのに大いに役立ちます。 read-test

3. 関数を実装し、テストコードを作成してください

compatディレクトリに関数の実装を追加してください。 関数がLodashと完全に同じ動作をすることを検証するために、Lodash v5-wip ブランチのテストコードをそのままコピー&ペーストしてください。

実装チェックリスト

  • あなたの関数のシグネチャは@types/lodashの型と一致していますか?
  • 同一の動作を検証するためにLodashからテストコードをコピーしましたか?

4. JSDocコメントを追加してください

新しく実装された関数の動作を説明する明確なJSDocコメントを追加してください。以下のようなプロンプトでAIに質問すると、草案を作成してくれるでしょう:

Add JSDoc comments to each function declaration, including helpful examples in each one. Print the code in markdown.
{Your code here}

5. ドキュメントを生成してください

複数の言語でのドキュメントファイルが必要です。コードを./src/array/test.tsに作成した場合、以下の場所にドキュメントファイルを生成してください:

  • 英語:./docs/reference/array/test.md
  • 日本語:./docs/ja/reference/array/test.md
  • 中国語(簡体字):./docs/zh_hans/reference/array/test.md
  • 韓国語:./docs/ko/reference/array/test.md

ドキュメント生成ツールを使用する

より簡単にドキュメントを生成するための自動スクリプトがあります。まず、Denoがなければインストールしてください:

curl -fsSL https://deno.land/install.sh | sh

次のコードを使用してドキュメント生成ツールを実行してください:

# リポジトリのルートで実行してください
deno run -A ./.scripts/docs/generate-docs.mts

ドキュメントを翻訳する

ライブラリは世界中で使用されているため、ドキュメントの翻訳が重要です。OpenAI APIキーをお持ちであれば、次のコマンドを実行して翻訳を自動化することもできます:

OPENAI_API_KEY=your_key_here deno run -A ./.scripts/docs/generate-docs.mts