TogetherJSはJavaScript製、Mozilla Public Licenseのオープンソース・ソフトウェアです。

Webアプリケーションをリアルタイムコラボレーション化しようと思うとサーバサイドの様々な仕組みを開発しないといけません。そこで頓挫してしまう人も多いでしょう。しかしTogetherJSを使えばチャット及びコラボレーション機能があっという間に手に入ります。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.36.17_thumb.1379903817.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.36.17.1379903817.png)
Todoアプリの例。右側に出ている部分がTogetherJSです。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.36.52_thumb.1379903826.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.36.52.1379903826.png)
マウスボタンにユーザ名が出ています。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.37.25_thumb.1379903832.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.37.25.1379903832.png)
チャットもできます。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.39.32_thumb.1379903842.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-21 22.39.32.1379903842.png)
複数人の表示に対応しています。

TogetherJSではテキストチャットの他、動画や音声チャットも提供しています。さらに同じドメイン中における別なURL閲覧を確認したり、コンテンツの変更をリアルタイム同期もできます。何よりTogetherJSを読み込むだけで実現できるという手軽さが良いですね。

MOONGIFTはこう見る

もしこの手の技術をスクラッチで組もうと思うと、WebSocketサーバの他、WebRTCによる動画、音声チャット実装や入力のリアルタイム同期処理など頭を悩ませる機能実装が目白押しです。相当な工数が予想され、そこまでの意義を見いだせずに開発はストップするでしょう。

TogetherJSのような外部サービスを活用するのは開発工数の低減はもちろんのこと、テストマーケティングとして使うことで開発コストをかけずにテストができます。さらに導入までのスピードが速まるのでチャンスを逃さずに済むはずです。

Mozilla Labs : TogetherJS

mozilla/togetherjs