Sign in to follow this  
Followers 0

HPR - HPR1203: templer: a static html generator

2 posts in this topic

In today's show Chess talks to us about a static html generator written in perl called templer


Templer is yet another static site generator, written in Perl.

It makes use of the HTML::Template module for performing variable expansion within pages and layouts, along with looping and conditional-statement handling.

Templer has evolved over time for my own personal use, but I believe

it is sufficiently generic it could be useful to others.

My motivation for putting it together came from the desire to change

several hand-made, HTML-coded, sites to something more maintainable such

that I could easily change the layout in one place.

The design evolved over time but the key reason for keeping it around

is that it differs from many other simple static-generators in several


You may define global variables for use in your pages/layouts.

A page may define and use page-specific variables.

You may change the layout on a per-page basis if you so wish.

This was something that is missing from a lot of competing tools.

Conditional variable expansion is supported, via HTML::Template.

File contents, shell commands, and file-globs may be used in the templates

This allows the trivial creation of galleries, for example.

These are implemented via plugins.

You may also embed perl code in your pages.

Another key point is that the layouts allow for more than a single

simple "content" block to be placed into them - you can add arbitrary

numbers of optional side-menus, for example.

Although this tool was written and used with the intent you'd write your

site-content in HTML you can write your input pages in Textile or Markdown

if you prefer (these inputs are supported via plugins).

Go to this episode


Share this post

Link to post
Share on other sites

I use a similar static HTML generator called Jekyll (link: ), a very good way to avoid the hassle of true dynamic CMS while making maintenance a lot easier. I use Markdown with Jekyll, but it supports other markup languages as well. A perl-based solution may be lighter depending on your needs.


Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
Followers 0