最近にわかに盛り上がっているReactですが、独自の書き方やHTMLとJavaScriptが密接することに対して何となく避けてしまっている人も多いかも知れません。サーバサイドでも使えると言ってもnodeを使うのが難点に感じる人もいます。 もしあなたがRuby使いで、Reactを使ってみたいならばReact.rbを使うという手もありそうです。

React.rbの使い方

React.rbはOpalを使い、RubyでReactを使えるようにするというかなりチャレンジングなソフトウェアです。

例えばこんな感じです。

class HelloMessage
  def render
    React.create_element("div") { "Hello World!" }
  end
end

puts React.render_to_static_markup(React.create_element(HelloMessage))
# => '<div>Hello World!</div>'

Sinatraとの連携もできるようです。

Todoアプリ。普通に動くのがすごい…

ファイル一覧。確かにJavaScriptはありませんね。

シンプルなデモ。

こちらはワンソースなので動きが分かりやすいです。

RubyでReactをやるというと無茶な気もしますが、Opalを挟むことによってReactの生産性をあげるというのは面白い気がします。Ruby使いの方はぜひご覧ください。

React.rbはRuby製のオープンソース・ソフトウェア(MIT License)です。

zetachang/react.rb