Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
82 lines (52 sloc) 2.22 KB

nunjucks-date-filter

Build Status Code Climate

This defines a date filter for Nunjucks implementing moment.js, a rich date manager.

Getting Started

You may install this plugin with this command:

npm install nunjucks-date-filter --save-dev

Usage

You must first include the filter and then add it to your nunjucks environment:

var dateFilter = require('nunjucks-date-filter');

var env = new nunjucks.Environment();

env.addFilter('date', dateFilter);

A shortcut is proposed in the package:

var dateFilter = require('nunjucks-date-filter');

dateFilter.install(
    [ env ]                     // by default, current nunjucks environment will be used
    [ , custom_filter_name ]    // by default, the filter will be named "date"
);

You can also define a default date format:

var dateFilter = require('nunjucks-date-filter');

dateFilter.setDefaultFormat('YYYY');

Once it is installed, you can call the filter in your nunjucks templates:

// with no format
This blog has been created at {{ creation_date | date }}.

// with a custom format
This blog has been created at {{ creation_date | date("YYYY") }}.

// with an addition first
This blog has been created at {{ creation_date | date("add", 7, "days") | date }}.

Momentjs usage

The moment library proposes a large set of date formats you can use to customize the filter output. It also embeds a huge set of methods to manipulate dates. Any of these methods can be called using the filter, passing as many arguments as needed (see example above).

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Mocha.