Node.jsの三つめの特徴は、開発者コミュニティーが活発で、その成果物であるアドオンが充実していることだ。Node.jsを利用する企業の多くが、何らかのアドオンを組み合わせてシステムを開発している。

 オークネットはNode.jsとアドオンを利用して、マルチデバイスに対応したリアルタイム・オークション・システム「mint」を開発した(図1)。PCやスマートフォン、タブレット端末からオークションサーバーに接続し、競りに参加できるシステムである。Node.jsの処理性能を生かし、参加者の応札情報をリアルタイムに、ほかの参加者のPC上に表示する。オークネットはアドオンを活用することで、開発効率を高めた。2011年春に開発に着手し、「夏にはベースとなるシステムを完成させた」(オークネットの黒柳氏)。

図1●オークネットのリアルタイム・オークション・システム「mint」の概要
Node.jsと組み合わせて使う3種類のアドオンを用いることで開発負担を軽減した
図1●オークネットのリアルタイム・オークション・システム「mint」の概要。Node.jsと組み合わせて使う3種類のアドオンを用いることで開発負担を軽減した。
[画像のクリックで拡大表示]

 開発時に使用したNode.js関連アドオンは、三つある。「Socket.io」は、リアルタイム通信を実現するプロトコル「WebSocket」を使用できるようにするアドオンである。「NowJS」は、サーバーとクライアント間で双方向通信を実現するアドオンだ。「Passport」は、ユーザーの認証管理をするアドオンである。いずれもインターネット上に公開されており、無償で利用できる。