mcpField
D
dinero-best-practices

dinero-best-practices

github.com/dinerojs開発2364 回インストール35 週間前に更新
リポジトリ

dinero-best-practices について

dinero-best-practicesは、Dinero.jsで金額を安全に作成・計算・整形する開発者向けのガイドスキルです。JavaScriptとTypeScriptでのオブジェクト生成、演算、精度、インポートのルールを優先度別にまとめています。

主な機能

  1. 01通貨の最小単位で金額を作成
  2. 02安全な金額演算パターンの利用
  3. 03numberとbigintの計算器の選択
  4. 04精度と暗号資産の金額への対応
  5. 05ツリーシェイキングを考慮したインポート

活用シーン

  1. 01ユーザーやAPIの入力から金額オブジェクトを作成
  2. 02合計額の配分や割合の計算
  3. 03安全な整数範囲を超える金額の処理
  4. 04対応するbigint通貨インポートの選択

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/dinerojs/skills --skill dinero-best-practices

インストール後、Claude Code で/dinero-best-practicesを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

rules/
_sections.md
arithmetic-allocate-not-divide.md
arithmetic-immutability.md
arithmetic-percentages.md
arithmetic-scaled-amounts.md
creation-from-floats.md
creation-minor-units.md
creation-zero-exponent.md
imports-bigint-currencies.md
imports-tree-shaking.md
precision-bigint.md
precision-crypto.md
precision-trim-scale.md

詳細

Dinero.js のベストプラクティス

お金を安全に作成、計算、フォーマットするための JavaScript/TypeScript ライブラリである Dinero.js を扱う際の基本ルールです。影響度に基づいて優先順位を付けた 4 つのカテゴリのルールが含まれています。

適用する場面

次のような場合に、これらのガイドラインを参照してください。

  • ユーザー入力、API レスポンス、またはデータベースの値から Dinero オブジェクトを作成する場合
  • 金額の算術演算(加算、分割、乗算)を行う場合
  • number と bigint のどちらの計算機を使用するか選ぶ場合
  • dinero.js、dinero.js/currencies、または dinero.js/bigint からインポートする場合
  • 価格、費用、税金、またはあらゆる金銭計算を扱う場合

優先度別のルールカテゴリ

優先度カテゴリ影響度接頭辞
1オブジェクトの作成CRITICALcreation-
2算術演算CRITICALarithmetic-
3精度HIGHprecision-
4インポートMEDIUMimports-

クイックリファレンス

1. オブジェクトの作成(CRITICAL)
  • creation-minor-units - 金額は常に最小通貨単位の整数で渡します
  • creation-from-floats - ヘルパーを使って浮動小数点数の入力を最小通貨単位に変換します
  • creation-zero-exponent - 指数が 0 の通貨(例:JPY)には、主要通貨単位を直接渡します
2. 算術演算(CRITICAL)
  • arithmetic-immutability - すべての演算は新しいオブジェクトを返すため、戻り値を保持します
  • arithmetic-allocate-not-divide - 金額の分割には手動での除算ではなく、allocate を使用します
  • arithmetic-scaled-amounts - 生の小数を乗算してはいけません。スケーリングした金額を使用します
  • arithmetic-percentages - パーセンテージの計算には allocate またはスケーリングした multiply を使用します
3. 精度(HIGH)
  • precision-bigint - 金額が Number.MAX_SAFE_INTEGER を超える場合は、dinero.js/bigint を使用します
  • precision-crypto - 暗号資産は指数が大きいため、bigint が必要です
  • precision-trim-scale - 連続した演算の後に末尾のゼロを取り除くには、trimScale を使用します
4. インポート(MEDIUM)
  • imports-tree-shaking - 使用するものだけをインポートします。単独の関数を使うとツリーシェイキングが可能になります
  • imports-bigint-currencies - 計算機の型を一致させます。dinero.js/bigint と併せて dinero.js/bigint/currencies を使用します

使い方

詳しい説明とコード例については、各ルールファイルをお読みください。

rules/creation-minor-units.md
rules/arithmetic-allocate-not-divide.md

各ルールファイルには、次の内容が含まれています。

  • 重要な理由の簡潔な説明
  • 誤ったコード例とその説明
  • 正しいコード例とその説明
  • 補足情報と参考資料

コメント