Sometimes being able to preview a view might come in handy, like when a view is going to be used only inside a PDF, for example.

This gem allows a setup similar ActionMailer::Preview, and provides a development tool for rendering and debugging views that wouldn't otherwise be rendered in your application.


Add this line to your application's Gemfile:

gem 'action_view_preview'

And then execute:

$ bundle

Or install it yourself as:

$ gem install action_view_preview


Command Line Install

Run rails generate action_view_preview:install and the generator should create a hello_preview.rb and mount the route in your routes.rb file, similar to the steps shown below in the manual install.

Manual Install

  1. Mount the engine in your routes.rb:
Rails.application.routes.draw do
  # Add the line below
  mount ActionViewPreview::Engine => "/action_view_preview"
  1. Create files *_preview.rb on test/views/previews/, e.g. hello_preview.rb:
class HelloViewPreview < ActionViewPreview::Base
  def hello
    '<b>Hello world</b>'
  1. Access the route /action_view_preview to see the available previews


Add a ActionViewPreview.setup block to an initializer. For example, if you want to place the preview files in lib/view_previews:

ActionViewPreview.setup do |config|
  config.preview_path = "#{Rails.root}/lib/view_previews"

Possible config values:

Config Default Description
preview_path test/views/previews Path to the preview files


The gem is available as open source under the terms of the MIT License.