Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    gulp-nunjuckspublic

    gulp-nunjucks Build Status

    Compile/precompile Nunjucks templates

    Issues with the output should be reported on the Nunjucks issue tracker.

    Install

    $ npm install --save-dev gulp-nunjucks
    

    Usage

    Compile

    const gulp = require('gulp');
    const nunjucks = require('gulp-nunjucks');
     
    gulp.task('default', () =>
        gulp.src('templates/greeting.html')
            .pipe(nunjucks.compile({name: 'Sindre'}))
            .pipe(gulp.dest('dist'))
    );

    You can alternatively use gulp-data to inject the data:

    const gulp = require('gulp');
    const nunjucks = require('gulp-nunjucks');
    const data = require('gulp-data');
     
    gulp.task('default', () =>
        gulp.src('templates/greeting.html')
            .pipe(data(() => ({name: 'Sindre'})))
            .pipe(nunjucks.compile())
            .pipe(gulp.dest('dist'))
    );

    Precompile

    const gulp = require('gulp');
    const nunjucks = require('gulp-nunjucks');
     
    gulp.task('default', () =>
        gulp.src('templates/greeting.html')
            .pipe(nunjucks.precompile())
            .pipe(gulp.dest('dist'))
    );

    API

    nunjucks.compile([data], [options])

    Compile a template using the provided data.

    data

    Type: Object

    The data object used to populate the text.

    options

    Type: Object

    Options will be passed directly to the Nunjucks Environment constructor which will be used to compile templates.

    options.env

    Type: nunjucks.Environment
    Default: new nunjucks.Environment()

    The custom Nunjucks Environment object which will be used to compile templates. If supplied, the rest of options will be ignored.

    options.filters

    Type: Object

    An object containing custom filters that will be passed to Nunjucks, with the filter's name as key and the filter function as value.

    Example:

    {
        'shorten': str => str.slice(0, 5),
        'round': num => Math.round(num)
    }

    nunjucks.precompile([options])

    Precompile a template for rendering dynamically at a later time.

    Same options as nunjucks.precompile() except for name.

    options

    Type: Object

    name

    Type: Function
    Default: Relative template path
    Example: templates/list.html

    You can override the default behavior by supplying a function which gets the current File object and is expected to return the name.

    Example:

    {
        name: file => `tpl-${file.relative}`
    }

    License

    MIT © Sindre Sorhus

    install

    npm i gulp-nunjucks

    Downloadsweekly downloads

    1,461

    version

    4.0.0

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar