Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
93 lines (56 sloc) 3 KB

Ruby on Rails Guides Guidelines

This guide documents guidelines for writing Ruby on Rails Guides. This guide follows itself in a graceful loop, serving itself as an example.



Guides are written in Textile. There is comprehensive documentation and a cheatsheet for markup.


Each guide should start with motivational text at the top (that’s the little introduction in the blue area). The prologue should tell the reader what the guide is about, and what they will learn. See for example the Routing Guide.


The title of every guide uses h2; guide sections use h3; subsections h4; etc.

Capitalize all words except for internal articles, prepositions, conjunctions, and forms of the verb to be:

Middleware Stack is an Array
h5. When are Objects Saved?

Use the same typography as in regular text:

The :content_type Option

API Documentation Guidelines

The guides and the API should be coherent and consistent where appropriate. Please have a look at these particular sections of the API Documentation Guidelines:

Those guidelines apply also to guides.

HTML Guides


To generate all the guides, just cd into the guides directory and execute:

bundle exec rake generate_guides

(You may need to run bundle install first to install the required gems.)

To process my_guide.textile and nothing else use the ONLY environment variable:

touch my_guide.textile
bundle exec rake generate_guides ONLY=my_guide

By default, guides that have not been modified are not processed, so ONLY is rarely needed in practice.

To force processing all the guides, pass ALL=1.

It is also recommended that you work with WARNINGS=1. This detects duplicate IDs and warns about broken internal links.

If you want to generate guides in a language other than English, you can keep them in a separate directory under source (eg. source/es) and use the GUIDES_LANGUAGE environment variable:

bundle exec rake generate_guides GUIDES_LANGUAGE=es


Please validate the generated HTML with:

bundle exec rake validate_guides

Particularly, titles get an ID generated from their content and this often leads to duplicates. Please set WARNINGS=1 when generating guides to detect them. The warning messages suggest a solution.

Kindle Guides


To generate guides for the Kindle, you need to provide KINDLE=1 as an environment variable:

KINDLE=1 bundle exec rake generate_guides

Something went wrong with that request. Please try again.