Helperful: a large collection of Rails Helpers

Helperful aims to be a collection of useful and reusable Rails helpers.

Rails Installation

As a Gem

This is the preferred way to install Helperful and the best way if you want install a stable version.

$ gem install weppos-helperful --source http://gems.github.com"

You can specify the GEM dependency in your application environment.rb file:

Rails::Initializer.run do |config|
  # other configurations
  # ...

  config.gem "weppos-helperful", :lib => "helperful", :source => "http://gems.github.com"
end

As a Plugin

This is the preferred way if you want to live on the edge and install a development version.

$ script/plugin install git://github.com/weppos/helperful.git

Available Helpers

The list of available helpers actually includes AffiliationsHelper, ContentHelper and the more famous TitleHelper.

Affiliations Helper

Provides a set of helpers for working with online affiliations.

For example, the tradedoubler_verification_tag helper method returns the site verification tag required by Tradedoubler to verify the publisher account ownership.

# In your template
<%= tradedoubler_verification_tag('00112233') %>

# Will produce the following output.
<!-- TradeDoubler site verification 00112233 -->

Content Helper

Provides a set of helpers for capturing and working with your page content in a more effective way.

For example, the has_content? helper is a natural fulfillment for the original content_for helper.

<% content_for :foo do %>
  <div>This is a foo content.</div>
<% end %>

<% has_content? :foo  # => true %>
<% has_content? "foo" # => true %>

Title Helper

Provides an helper for managing page title in Rails views and layouts.

# Include the helper in your controller.
# You might want to include it in ApplicationController to make it available
# always and everywhere in your templates.
class ApplicationController < ActionController::Base
  helperful :title
end
# Now you can use set a title in your action
# Example. index.html.rb
<h1><%= title 'This is a title' %></h1>

# And print the title with a :site decorator in your layout.
<%= title :site => 'My Cool Site!' %>

<%= yield %>

Documentation and Repository

Visit the project page or the documentation for further details. The repository is available on GitHub for forking or reference. Feel free to add more helpers and send me a pull request. Please ensure new helpers come with an appropriate test suite.