engine-plntr-handlebars

Planitar Handlebars engine, consolidate.js style but with enhancements. This works with Assemble, express.js, engine-cache or any application that follows consolidate.js conventions.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
engine-plntr-handlebars
000.8.16 years ago8 years agoMinified + gzip package size for engine-plntr-handlebars in KB

Readme

engine-plntr-handlebars Build Status

===================================================

THIS IS A FORK OF

jonschlinkert/engine-handlebars
The only difference is the delimiters of the underlying Handlebaras are <{{ and }}> instead of {{ and }} respectively.

===================================================

Handlebars engine, consolidate.js style but with enhancements. This works with Assemble, express.js, engine-cache or any application that follows consolidate.js conventions.

Heads up! Breaking changes in 0.8.0.

Install

Install with npm
$ npm i engine-plntr-handlebars --save



(Table of contents generated by verb)

Usage

var engine = require('engine-handlebars');

API

.compile

Handlebars string support. Compile the given str and register helpers and partials from settings
Params
  • str {String}: String or compiled function.
  • options {Object}: object containing optional helpers and partials

Example
var engine = require('engine-handlebars');
var fn = engine.compile('{{name}}', {});

.render

Handlebars string support. Render the given str and invoke the callback cb(err, str).
Params
  • str {String|Function}: String or compiled function.
  • locals {Object|Function}: or callback.
  • cb {Function}: callback function.

Example
var engine = require('engine-handlebars');
engine.render('{{name}}', {name: 'Jon'}, function (err, content) {
  console.log(content); //=> 'Jon'
});

.renderFile

Vinyl
file support. Render tempates in the contents of the given file and invoke the callback cb(err, file). If the file has a data object, it will be merged with locals and passed to templates as context. data wins over locals.
Params
  • file {Object}: Vinyl file.
  • locals {Object|Function}: or callback.
  • cb {Function}: callback function.

Example
var engine = require('engine-handlebars');
var file = new File({
  path: 'foo.hbs',
  contents: new Buffer('{{name}}')
});
engine.renderFile(file, {name: 'Foo'}, function (err, res) {
  console.log(res.contents.toString())
  //=> 'Foo'
});

.renderSync

Synchronously render Handlebars templates.
Params
  • str {Object|Function}: The string to render or compiled function.
  • locals {Object}
  • returns {String}: Rendered string.

Example
var engine = require('engine-handlebars');
engine.renderSync('<%= name %>', {name: 'Jon'});
//=> 'Jon'

Related projects

  • assemble: Static site generator for Grunt.js, Yeoman and Node.js. Used by Zurb Foundation, Zurb Ink, H5BP/Effeckt,… more | homepage
  • handlebars-helpers: 120+ Handlebars helpers in ~20 categories, for Assemble, YUI, Ghost or any Handlebars project. Includes… more | homepage
  • helper-cache: Easily register and get helper functions to be passed to any template engine or node.js… more | homepage
  • template-helpers: Generic JavaScript helpers that can be used with any template engine. Handlebars, Lo-Dash, Underscore, or… more | homepage
  • templates: System for creating and managing template collections, and rendering templates with any node.js template engine.… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Tests

Install dev dependencies:
$ npm i -d && npm test

History

| version | description | | --- | --- | | v0.8.0 | renderFile now expects a vinyl file. The old renderFile method is now exposed on engine.__express | | v0.7.0 | update to handlebars 0.4.0 |

Author

Jon Schlinkert

License

Copyright © 2014-2015 Jon Schlinkert Released under the MIT license.

This file was generated by verb-cli
on September 18, 2015.