npmバージョン6.13から npm fund
というコマンドが実装されました。
このコマンドがどういう動きをするのか解説します。
2019/11/14更新
TL;DR
- npm fundというコマンドが実装された
- 資金提供を呼び掛けるためのURLなどが表示される(
npm install
の実行時などのタイミング) - 自分のパッケージにも
funding
フィールドを追加してURLを表示できる
細かい仕様は npm/rfcsを参照して下さい
npm fundとは何か
上記で述べた通り、このコマンドは利用者が開発者に対して金銭的支援をするための情報を表示します。
開発者から資金援助してもらうための情報提供手段が1つ増えたことになります。
This RFC identifies an initial means of tooling to describe & notify consumers of a package's monetary support information.
initial means(最初の手段)として提供されているので、もしかすると今後のアップデートでより開発者の支援を後押しする機能が入ってくる可能性もあるのかなと思います。
fundingフィールドの設定と挙動
npm fund
で情報を表示させるには、自身が公開しているnpmパッケージの package.json
に以下のように追記します。
typeフィールドはオプションで、urlフィールドには資金提供ページのURLを設定します。
※2019/11/14 現在はgithubのsponsorsのURLのみを設定する方が多いようです。
"funding": {
"type": "patreon",
"url": "https://www.patreon.com/yukisato"
}
上記を設定して npm fund
コマンドを打つと、以下のように出力されます。
$ npm fund
npm-fund-test@.0.0
├── type: patreon
└── url: https://www.patreon.com/yukisato
また、funding
フィールドが設定されたパッケージを npm install
などで仕様した場合には以下のようなメッセージが出てくるようになっていて、 npm fund
コマンドでの確認を促すようになっている。
3 packages are looking for funding.
Run "npm fund" to find out more.
これで誰でも「このパッケージめっちゃ使いやすいじゃん!支援したい!」というときに爆速で資金提供できるようになりました!
おまけ
サンプルはGitHubに置いていますので良ければ使って下さい。
npmにも置いているので以下のコマンドを使えばマッハで挙動を確認できます。そのまま資金提供もできます(俺に)
npm i npm-fund-test
npm fund
以上です!