Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

My Milkshake is Better than Yours

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 demo
Octocat-spinner-32 lib
Octocat-spinner-32 test
Octocat-spinner-32 var
Octocat-spinner-32 work
Octocat-spinner-32 .confile
Octocat-spinner-32 .gemspec
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .ruby
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 Assembly
Octocat-spinner-32 COPYING.rdoc
Octocat-spinner-32 Gemfile
Octocat-spinner-32 HISTORY.rdoc
Octocat-spinner-32 MANIFEST
Octocat-spinner-32 README.rdoc
Octocat-spinner-32 Reapfile


Homepage | Development | Report Issue | Mailing List


Malt provides a factory framework for rendering a variety of template and markup document formats. Malt has a very object-oriented design utilizing separate engine adapter classes and format classes. This makes Malt easy to maintain, debug and extend, and thus more robust. In fact, Malt supports template caching and ERB compilation by default, which was very easy to implement thanks to it's clean design.


Functional API

Malt.render(:file=>'foo.erb', :to=>:html, :data=>data)

Where data is a data source of some type. Malt will see that the file is an ERB template and render it accordingly.

The output of this call will be the HTML String.

Object-oriented API


Where data is a data source of some type. Malt will see that the file is an ERB template and render it accordingly.

To get the render text you simple need to provide the template or markup type.

Malt.text(text, :type=>:erb).to_html(data).to_s

Notice the #to_s. This is needed because #to_html returns an Malt::Format::HTML object.


JRuby and Rubinus users: Not all template systems work with your Ruby. Consequently not all of Malt will work either. Thankfully Malt only requires template engines as they are needed, so it will work fine in most cases. But, you will need to avoid engines that depend on compiled code, such as less and coffee-script.


To install with RubyGems simply open a console and type:

$ gem install

For a site install you will need Ruby Setup and the compressed packages (tar.gz or zip usually). Uncompress the package cd into it and run setup.rb, e.g.

$ tar -xvzf malt-x.y.z.tgz
$ cd malt-x.y.z.tgz
$ sudo setup.rb


Copyright © 2010 Rubyworks

This program is ditributed under the terms of the BSD-2-Clause license.

See the COPYING.rdoc file for details.

Something went wrong with that request. Please try again.