Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
XRB was inspired by XHP ( http://github.com/facebook/xhp/ ). XRB is a Rails Engine to be used. Having used XHP intensively, I saw the benefits of XML literals as first class elements in a programming language. The biggest benefit was that you could easily build large libraries of components to reuse on many sites. As I was unable to figure out how to add XML literals into the Ruby parser. I thought I would start with a more Ruby approach. Installation ============ Edit Your Application's Gemfile ------------------------------- Add to your Gemfile gem 'xrb', :require => 'xrb/engine' In your ApplicationHelper add require UiHelper Usage ===== Inside your template files you can now use XRB. <%= ui :image, :block do %> <% ui :link => user_path(user) %> <%= image_tag(user.photo.url(:thumbnail), :title => user %> <% end %> <% ui :group do %> <% ui :link => user_path(user) %> <%= user %> <% end %> <% ui :group do %> <%= user.description %> <% end %> <% end %> <% end %> Defining your own XRB Element ----------------------------- Say you want to define an element `user`. Inside a helper file we need to add a function: def ui_user(xrb) user = xrb.attributes.delete(:user) xrb.content = ui_output do content_tag :div, user, xrb.attributes end end Change the code inside `ui_output` to let design how your component will look like.