Format dates with date.js and moment.js. Uses date.js to parse human readable date phrases, and moment to format the rendered output. Should work with any Handlebars, Lo-Dash, underscore, or any template engine that allows helper functions to be registered. Also compatible with verb, assemble and Template.
With Handlebars:
With Lo-Dash or Underscore:
<%= date("5 years ago", "YYYY") %>
//=> 2010
With Verb (lo-dash, with special delimiters to avoid delimiter collision in markdown docs):
{%= date('5 years ago', 'YYYY') %}
//=> 2010
Install with npm
npm i helper-date --save
npm test
This should work with any engine, here are a few examples
Register the helper for use with any template engine
template.helper('date', require('helper-date'));
To register the helper for use with assemble v0.6.x:
assemble.helper('date', require('helper-date'));
Register the helper for use with verb:
var verb = require('verb');
verb.helper('date', require('helper-date'));
verb.task('default', function() {
verb.src('.verb*.md')
.pipe(verb.dest('./'));
});
var handlebars = require('handlebars');
handlebars.registerHelper('date', require('helper-date'));
Usage
// as a mixin
_.mixin({date: dateHelper});
_.template('<%= _.date("5 years ago", "YYYY") %>', {});
//=> 2010
// passed on the context
_.template('<%= date("5 years ago", "YYYY") %>', {date: dateHelper});
//=> 2010
// as an import
var settings = {imports: {date: dateHelper}};
_.template('<%= date("5 years ago", "YYYY") %>', {}, settings);
//=> 2010
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue
To request or contribute a helper to the github.com/helpers org, please read this contributing guide to get started.
Jon Schlinkert
Copyright (c) 2015 Jon Schlinkert
Released under the MIT license
This file was generated by verb on February 17, 2015.