GitXplorerGitXplorer
n

node-handlebars-precompiler

public
69 stars
12 forks
8 issues

Commits

List of commits on branch master.
Unverified
66bece245b7547c8a06220b2724aeafb6aed2094

[BF] Fix opts.partial

PPredokMiF committed 10 years ago
Unverified
366a62d7e86f7270f62df196093b75beccb5dba7

Merge pull request #15 from sabymike/patch-1

nnicjansma committed 10 years ago
Unverified
1fbedb9d403bcb3078baba03524691eccab7fc7d

Updated test for new commonJS exports

ssabymike committed 10 years ago
Unverified
627402743fbac14d3235752f45ba040c115a2e39

Export the templates for commonJS

ssabymike committed 10 years ago
Unverified
f10562b529dd25f79df8bea2db51042de1205188

v2.0.0 package

nnicjansma committed 10 years ago
Unverified
9f2310e5ecb662103ac4aa41d4f3d6f255f657e1

Merge pull request #14 from paton/upgrade-handlebars

nnicjansma committed 10 years ago

README

The README file for this repository.

node-handlebars-precompiler

Automatic compilation of your Handlebars templates.

Installation

npm install handlebars-precompiler

Usage

This is how you might use it in an Express project:

app.configure('development', function(){
  hbsPrecompiler = require('handlebars-precompiler');
  hbsPrecompiler.watchDir(
    __dirname + "/views",
    __dirname + "/public/javascripts/templates.js",
    ['handlebars', 'hbs']
  );
});

In this example, we watch for changes to *.handlebars and *.hbs files in our views directory. When changes are made, precompilation is run on all Handlebars templates and exported to a single minified Javascript file.

On the browser side, you will need to deploy the Handlebars runtime-only release. You could use the full release which includes a compiler, but your site will be faster if you don't.

Client-side versions of the templates will be named and stored in the Handlebars object according to their file paths, e.g. Handlebars.templates['users/show']

Reference

handlebars-precompiler.do(opts)

Compiles all of the Handlebars templates

Params:

  • opts Options (object)

    • opts.min Whether or not to minify the files (boolean)

    • opts.fileRegex File regular expression to match (RegExp)

    • opts.templates Template directories to compile (string[])

    • opts.output Output file name (string)

    • opts.amd Exports amd style (require.js) (boolean)

    • opts.handlebarPath Path to handlebar.js (only valid for amd-style) (string)

    • opts.partial Compiling a partial template (boolean)

    • opts.commonjs Exports CommonJS style, path to Handlebars module (string)

handlebars-precompiler.watchDir(dir, outfile, extensions)

Compiles all of the Handlebars templates in the specified directory and monitors for changes.

Deprecated: This function is deprecated in favor of watch(), which allows for more options.

Params:

  • dir Directory with Handlebars templates (string)

  • outfile Output file name (string)

  • extensions An array of extensions of files (eg ['hbs']) to compile as Handlebars templates (string[])

handlebars-precompiler.watch(dir, outfile, opts)

Compiles all of the Handlebars templates in the specified directory and monitors for changes.

Params:

  • dir Directory with Handlebars templates (string)

  • outfile Output file name (string)

  • opts Options (object)

    • opts.extensions An array of extensions of files (eg ['hbs']) to compile as Handlebars templates (takes precedence over fileRegex) (string[])

    • opts.pollInterval Interval in milliseconds at which files are polled for changes (default: 500) (number)

    • opts.fileRegex A regular expression of the files to compile as Handlebars templates (instead of using .extensions) (RegExp)

    • opts.min Whether or not to minify the files (default: true) (boolean)

    • opts.silent Silence console output (default: false) (boolean)

    • opts.amd Exports amd style (require.js) (default: false) (boolean)

    • opts.handlebarPath Path to handlebar.js (only valid for amd-style) (default: '') (string)

    • opts.partial Compiling a partial template (default: false) (boolean)

    • opts.commonjs Exports CommonJS style, path to Handlebars module (default: false) (string)

Contributors

  • Project created by Joel Wietelmann
  • Nic Jansma
  • Matt Null
  • Brandon Paton

Version History