chains-pages

Compile templates with content to html

npm install chains-pages
14 downloads in the last week
30 downloads in the last month

chains-pages

Overview

This plugin requires Grunt ~0.4.0

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install chains-pages --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('chains-pages');

Pages task

Run this task with the grunt pages command.

Example

pages: {
  options: {
    partials: ['include/*'],
    template: 'layout/template.hogan',
    context: function(src, dest){
      return {title: 'Hello World!'};
    },
    engine: 'hogan'
  },
  test: {
    files: [
      {
        expand: true,
        cwd: 'content/',
        src: ['*'],
        dest: 'out/'
      }
    ]
  }
}

Options

files

Type: String|Array

This plugin supports use of the files API introduced in Grunt 0.4.0. Files may be specified using any one of the Compact Format, Files Objects Format, or Files Array Format (as in the above example).

template

Type: String

This defines which tepmlate to use when precessing files.

partials

Type: String|Array

This defines which partials to use in the template option. It accepts either comma separated globbing patterns or an array of globbing patterns.Paths matching patterns that begin with ! will be excluded from the returned array.Patterns are processed in order, so inclusion and exclusion order is significant. Refer grunt.file.expand

engine

Type: String

This option accecpts all template engine names that consolidate.js supports. Refer consolidate.js. Default is hogan.

context

Type: Function|Object

This defines extra Context when render templates. It will add a partials property and a content property. So, in your template you can use content to output the content specified in files.src. If defined it as a Function, you must return an Object with all properties accessed in your template.

npm loves you