Behance Hogan Compiler

This Browser / Node.js library is a helper for loading mustache templates via Hogan.js.
Features
- caching & asynchronous loading
- retrieval and resolution of partials
- retrieve the files any way you like via the driver (e.g, XHR in the browser and fs in Node.js)
Usage
const hoganCompiler = require('@behance/hogan-compiler');
const fsDriver = require('@behance/hogan-compiler/src/drivers/fs');
const templatesPath = '/tmp';
const compiler = hoganCompiler.create(fsDriver, templatesPath);
compiler.populateCache()
.then(() => console.log('Cache has been populated'));
compiler.compile('my_template')
.then((template) => {
const renderedString = template.render({ name: 'Mary' });
console.log(renderedString);
});
Create Arguments:
driver
- will be used to read files. All methods must return a Promise. See src/drivers/fs
for an example.
templatesPath
- absolute path to the templates
options.extension
- defaults to mustache
(e.g., template.mustache
)
options.isCached
- cache compiled templates in the created instance
HoganCompilerOptions:
asString
- return the compiled template as a string. This feature is used by hulk to produce strings containing pre-compiled templates.
sectionTags
- allow custom tags that require opening and closing tags, and treat them as though they were section tags.
delimiters
- A string that overrides the default delimiters. Example: "<% %>"
disableLambda
- isables the higher-order sections / lambda-replace features of Mustache.
For more details see Hogan Compilation options.
License
Apache-2.0