はじめに
本投稿は、Node-RED アドベントカレンダー 2023の12/5の記事になります。
少し遅れての記事投稿すみません。。。
先日、Node-REDのユーザーコミュニティメンバーの中で、ふと「自分が公開したNodeってどれくらいの人が使ってくれてるか分からないかなー?」みたいな話が出ました。そこから派生して、どのノードがどのくらい使われているかを知りたいということで、せっかくなので今回はNode-REDのFlow Libraryから、現在人気のノードを紹介してみたいと思います。
Flow Libraryとは?
Node-RED Flow Libraryは、Node-REDユーザーが作成したフローやリソース(ノード、フローノード、テンプレート、フローベースのアプリケーション)を共有するためのプラットフォームです。これにより、他のユーザーがこれらのリソースを探索し、再利用できます。Flow Libraryには、さまざまなドメインや用途に関するフローが含まれており、これを通じてコミュニティが知識やベストプラクティスを共有できます。
Node-RED Flow Libraryを使用することで、同じ問題に直面している他のユーザーが既に解決策を提供しているかもしれませんし、自身のプロジェクトで使用できる便利なツールやアイデアを見つけることができます。
人気の指標
Node-RED Flow Libraryでは、ノードやフローを、ダウンロード数とレーティング、それぞれでソートすることができます。デフォルトのビューは「recent」、つまり最近公開されたまたはアップデートされたものが上位に表示されています。
今回は、ダウンロード数の上位5個を紹介していきたいと思います。(レーティングだと、星5つのものがたくさん有りすぎて上位を絞れないため)
ダウンロード数ランキング
※ 各ノードのダウンロード数は、記事執筆時点のものです。
1位:ダッシュボード(node-red-dashboard)
15,823ダウンロード
映えある一位はダッシュボードノードでした!
ライブデータをチャートやグラフに表示してダッシュボードを簡単に実現できるノードです。
これは、不動の人気ですね。私が2017年にNode-RED Conで基調講演で話したスライドにも記載してますが、その時点でも1位でした。
注意点として、現在はメンテナンスされていないということです。小規模なパッチは可能な限り適用されますが、主要な機能のアップグレードはなく、根本的なセキュリティの破壊が発生する可能性があります。
ノードのカテゴリーは「dashboard」
2位:フローマネージャー(node-red-contrib-flow-manager)
13,927ダウンロード
第二位はフローマネージャーモジュールでした!
Flow Managerはノードではありませんが、フローのJSONを複数のファイルに分割する機能を提供するモジュールです。Libraryではノードの扱いになるようですね。
これをインストールすると、フィルターボタンがフローエディタ上に表示され、エディタへロードするフローを任意のものだけ(または全部)に選択できるようになります。
第3位:シリアルポート(node-red-node-serialport)
5,822ダウンロード
第三位はシリアルポートノードでした!
このノードを利用することで、ハードウェアのシリアルポートと通信することができます。
メッセージを受信するノードと送信するノード、送信して応答を待つ要求ノード、および使用中のポートを動的に制御できる制御ノードの 4 つのノードを提供します。
IoT分野ではおなじみのノードかもしれませんね。
ノードのカテゴリーは「network」になります。
第4位:Eメール(node-red-node-email)
5,807ダウンロード
第四位はEメールノードでした!
こちらは、その名の通り電子メールを送受信するためのノードです。
入力では、IMAP または POP3 サーバーから電子メールを取得し、まだ表示されていない場合はメッセージとして転送します。
出力では、msg.topicを件名、msg.payloadを本文、という形で電子メールとして送信します。
デフォルトのメッセージ受信者はノードで設定できます。
注意点として、電子メール サーバーの有効な電子メール認証情報が必要という点があります。GMail に関しては、2要素認証が有効になっている場合、アプリケーションパスワードが必要な場合があります。また、Exchange および Outlook 365 の場合は、OAuth2.0 を使用する必要があります。
ノードのカテゴリーは「social」になります。
第5位:モーメントノード(node-red-contrib-moment)
5,807ダウンロード
第五位はモーメントノードでした!
フォーマットされた日付/時刻出力を生成するノードで、タイムゾーン、夏時間、ロケールを認識します。つまり、このノードを使用して、あるタイムゾーンから別のタイムゾーンに変換できるようになります。夏時間 (DST) も考慮されます。
moment.jsがJSONataに組み込まれており、change、function、およびその他のノードから利用できるため、このノードがさらに機能強化される可能性は低いです。
ノードのカテゴリーは「formats」になります。
まとめ
いかがでしたでしょうか?Node-RED Flow Libraryには、いろいろなコントリビューターが公開してくれているノードやフローがたくさんあります。
自分で作成したものも公開できますし、世界中の人に使ってもらうことができます。
開発者にとっては、このようなダウンロード数やレーティングは、開発をするモチベーションにつながるのではないでしょうか。
また、見たことも聞いたこともないノードなどもたくさんあると思うので(本記事執筆時点でノードが4759個、フローが2616個)、ぜひお時間のあるときにでも探索してみると面白いと思います!
ではでは!