DecafはWebKitからフォークし、Ruby実行エンジンを載せたWebブラウザです。

Webブラウザで使えるプログラミング言語はJavaScriptだけです。ActionScript/.NET/Javaも使えますが、それはプラグインを使わないといけません。そんな状況に反旗を翻し、Rubyが動くようにしてしまったのがDecafです。

[![](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.28.01_thumb.1365509710.png)](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.28.01.1365509710.png)
サンプル。クライアントサイドでRubyを実行して、その結果を描画しています。

[![](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.29.43_thumb.1365509714.png)](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.29.43.1365509714.png)
コンソールも使えます。

[![](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.31.08_thumb.1365509720.png)](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.31.08.1365509720.png)
CSSやJavaScriptのURLやパスを指定して読み込んでいます。

[![](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.33.03_thumb.1365509723.png)](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.33.03.1365509723.png)
AjaxのようにGETでファイルを取り込めます。

[![](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.34.23_thumb.1365509729.png)](http://images.moongift.jp/2013/04/Screenshot 2013-04-09 11.34.23.1365509729.png)
Hello Worldを出力した例。

DecafはWebKitからフォークし、Rubyを組み込んだWebブラウザです。scriptタグにおいて、typeをtext/rubyとしてRubyコードを実行することができます。今のところMac OSX向けのバイナリしかないのでどんどん使われていくという状態でもないですが、興味深いプロジェクトです。

DecafはMac OSX用、BSD Licenseのオープンソース・ソフトウェアです。

MOONGIFTはこう見る

Googleが先日WebKitをフォークし、Blinkというレンダリングエンジンに移行することを発表しました。Operaもまた、このBlink陣営に寄ると言われています。今は同一のレンダリング結果ながら、徐々にWebKitとBlinkは異なる方向に進んでいくと思われます。

オープンソースにおけるフォークは決して悪いことではありません。長期的に見ればユーザメリットがあると考えられます。Decafもまた、WebKitから自分の好みの機能を追加するために分離したプロジェクトです。レンダリング結果が同じ程度であれば、後は機能差をどう盛り込んでいくかがWebブラウザの魅力につながっていくでしょう。

Decaf : Ruby in the Browser

timahoney/decaf · GitHub