Dancer::Template::Tenjin - Tenjin wrapper for Dancer


version 0.5


        # in your config.yml
        template: "tenjin"

        # note: templates must use the '.tt' extension

        # you might also want to add (if your templates are UTF-8, which is the
        # default encoding used by Tenjin):
        charset: "UTF-8"


This class is an interface between Dancer's template engine abstraction layer and the Tenjin module.

Tenjin is a fast and feature-full templating engine that can be used by Dancer for production purposes. In comparison to Template::Toolkit, it is much more lightweight, has almost no dependencies, and supports embedded Perl code instead of defining its own language.

In order to use this engine, you need to set your webapp's template engine in your app's configuration file (config.yml) like so:

        template: "tenjin"

You can also directly set it in your app code with the set keyword.

Now you can create Tenjin templates normally, but note that due to a Dancer restriction your template files must end in the '.tt' extension as Dancer automatically adds this extension to the template names you declare in your apps.



Initializes a template engine by generating a new instance of Tenjin.

render( $template, $tokens )

Receives a template name and a hash-ref of key-value pairs to pass to the template, and returns the template rendered by Tenjin.


Dancer, Tenjin


Ido Perlmuter, <ido at ido50 dot net>


  • Alexis Sukrieh, <>

    Author of Dancer, who wrote Dancer::Template::Toolkit, on which this module is based.

  • Sawyer X, <xsawyerx at>

    Submitted helpful changes for version 0.3.

  • Franck Cuny <franck at lumberjaph dot net>

    Submitted a simple test for version 0.4.


  • Non-file sources

    Find a way to allow using templates from other source, such as a database, just like in Catalyst::View::Tenjin.

  • Fine-tune Tenjin

    Allow passing arguments to Tenjin, such as USE_STRICT.


Please report any bugs or feature requests to bug-dancer-template-tenjin at, or through the web interface at I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.


You can find documentation for this module with the perldoc command.

    perldoc Dancer::Template::Tenjin

You can also look for information at:


Copyright 2010-2011 Ido Perlmuter.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See for more information.