コンテンツへスキップ

コントリビュート

このプロジェクトへのコントリビュートにご関心をお寄せいただきありがとうございます!

警告: ⚠️ 新しい関数の追加速度の低下

VueUse のユーザーが増え続けるにつれて、機能リクエストとプルリクエストが殺到しています。その結果、プロジェクトの維持がますます困難になり、私たちの能力の限界に達しています。そのため、近い将来、新しい機能の受け入れを遅らせ、既存の関数の安定性と品質を優先する必要があるかもしれません。現時点では、VueUse の新しい機能は受け入れられない可能性があります。新しいアイデアがある場合は、まず独自のコードベースにそれらを組み込み、必要に応じて反復処理を行い、一般化可能性を評価することをお勧めします。あなたのアイデアがコミュニティにとって有益であると強く信じている場合は、ユースケースとともにプルリクエストを送信してください。喜んでレビューおよび議論させていただきます。ご理解のほどよろしくお願いいたします。

開発

セットアップ

このリポジトリをローカルマシンにクローンして、依存関係をインストールします。

bash
pnpm install

迅速な開発とドキュメント作成のためにVitePressを使用しています。ローカルで開始するには

bash
pnpm dev

コントリビュート

既存の関数

既存の関数を自由に拡張できます。破壊的な変更を導入しないようにしてください。

新しい関数

新しい関数追加に関するいくつかの注意事項があります。

  • 作業を開始する前に、まず問題を開いて議論することをお勧めします。
  • 実装は、フォルダとして`packages/core`の下に配置し、`index.ts`で公開する必要があります。
  • `core`パッケージでは、このパッケージは可能な限り軽量にすることを目的としているため、サードパーティの依存関係を導入しないようにしてください。
  • サードパーティの依存関係を導入したい場合は、@vueuse/integrations にコントリビュートするか、新しいアドオンを作成してください。
  • 関数テンプレートは`packages/core/_template/`にあります。詳細は関数フォルダセクションで説明されています。
  • 関数のドキュメントを作成する際、`<!--FOOTER_STARTS-->`と`<!--FOOTER_ENDS-->`はビルド時に自動的に更新されるため、更新する必要はありません。

パッケージの`index.ts`を更新する必要はありません。自動生成されます。

新しいアドオン

新しいアドオンは大歓迎です!

  • `packages/`の下に新しいフォルダを作成し、アドオン名に設定します。
  • `scripts/packages.ts`にアドオンの詳細を追加します。
  • そのフォルダの下に`README.md`を作成します。
  • コアパッケージと同様に機能を追加します。
  • コミットしてPRとして送信します。

プロジェクト構造

モノレポ

複数のパッケージにモノレポを使用しています。

packages
  shared/         - shared utils across packages
  core/           - the core package
  firebase/       - the Firebase add-on
  [...addons]/    - add-ons named

関数フォルダ

関数フォルダには通常、これらの4つのファイルが含まれています。

`packages/core/_template/`でテンプレートを見つけることができます。

bash
index.ts            # function source code itself
demo.vue            # documentation demo
index.test.ts       # vitest unit testing
index.md            # documentation

`index.ts`では、関数名を指定してエクスポートする必要があります。

ts
// DO
export { useMyFunction }

// DON'T
export default useMyFunction

`index.md`では、最初の文が関数リストの短い紹介として表示されるため、簡潔で明確にしてください。

markdown
# useMyFunction

This will be the intro. The detail descriptions...

ガイドラインの詳細については、こちらをご覧ください。

コードスタイル

開発用依存関係をインストールする限り、コードスタイルを気にする必要はありません。Gitフックがコミット時に自動的にフォーマットおよび修正します。

謝辞

このプロジェクトにご関心をお寄せいただき、改めて感謝申し上げます! 素晴らしいですね!

MITライセンスの下でリリースされています。