node package manager
It’s your turn. Help us improve JavaScript. Take the 2017 JavaScript Ecosystem Survey »


build status


connect-handlebars is Connect middleware that pre-compiles handlebars to JS. Since express is built on top of Connect, connect-handlebars will allow you to compile handlebars templates with expressjs.


npm install connect-handlebars


Example in express:

var connect_handlebars = require('connect-handlebars')
app = require('express').createServer()

app.use("/templates.js", connect_handlebars(__dirname + "/path/to/templates"));


The middleware builder takes two arguments source and options

  • source: The absolute path to the root directory of .handlebars files to compile.
  • options: Object of options with the following keys
    • exts: String|Array of file extensions to pre-compille. (default: ['hbs','handlebars'])
    • exts_re: RegExp instance for matching file extensions you want to match. Overrides exts
    • recursive: bool indicating if sub directories are searched (default: true)
    • encoding: String indicating the encoding to use (default: utf8)
    • cache: boolean indicating if you want to use caching (default: true)


npm test

Specs for the Jasmine tests are in ./specs