Skip to content
View helpers for Rails applications
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.


Build Status

Flutie provides some utility view helpers for use with Rails applications.

There are helpers for setting a page title and for generating body classes.

Installation & Upgrading

Flutie is a Railtie. We support the versions of Ruby and Rails listed in .travis.yml.

It should be run as a gem and included in your Gemfile:

gem "flutie"


Flutie provides helper methods for use within Rails layouts and views.

Page Title

The page_title method can be used like:

<title><%= page_title %></title>

By default, it will produce results like:

<title>Appname : page title</title>
  • "App name" comes from the module name of the rails application created by your app, i.e. Appname::Application will produce "Appname"
  • "page" comes from trying content_for(:page_title) and assumes you are using content_for with :page_title symbol on your pages.
  • The separator defaults to " : "

These can be overridden by passing an options hash including :app_name, :page_title_symbol and :separator hash keys. For example:

content_for(:site_page_title, 'My title of my page')
page_title(:app_name => 'My app name', :page_title_symbol => :site_page_title, :separator => " | ")

would produce:

<title>My app name | My title of my page</title>

You can also reverse the position of the app name and the :site_page_title using the :reverse option. For example:

content_for(:site_page_title, 'My title of my page')
page_title(:app_name => 'My app name', :page_title_symbol => :site_page_title, reverse: true)

would produce:

<title>My title of my page : My app name</title>

Body Class

The body_class method can be used like this in a layout:

<body class="<%= body_class %>">

This will produce a string including the controller name and controller-action name pair. For example, The WidgetsController#show action would produce:

<body class="widgets widgets-show">

Anything which has been added via content_for(:extra_body_classes) will be added to the end, for example views like:

content_for(:extra_body_classes, 'special-page')
<body class="<%= body_class %>">

would produce:

<body class="widgets widgets-show special-page">

How to contribute

Please see the CONTRIBUTING file for details.



Flutie is maintained and funded by thoughtbot, inc.

Thank you to all the contributors!

The names and logos for thoughtbot are trademarks of thoughtbot, inc.


Flutie is Copyright © 2010 thoughtbot, inc. It is free software, and may be redistributed under the terms specified in the LICENSE file.

You can’t perform that action at this time.