Skip to content

Instantly share code, notes, and snippets.

@doowb
Created June 4, 2014 22:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save doowb/8caf80f3e3412ee9e9ec to your computer and use it in GitHub Desktop.
Save doowb/8caf80f3e3412ee9e9ec to your computer and use it in GitHub Desktop.
new assemble sample
var assemble = require('assemble');
var matter = require('gray-matter');
var path = require('path');
var file = require('fs-utils');
var counter;
assemble.config({
options: {
data: ['src/data/**/*.{json,yml}']
}
});
assemble.task('update-counter', function () {
assemble
// update the counter from the data
.use(function (environment) {
counter = require('src/data/counter.json');
counter.count++;
})
// write the counter to a file for storage
.dest(function (environment) {
file.writeJSONSync('src/data/counter.json', counter);
});
});
assemble.task('site', function () {
var options = {
flatten: true,
ext: '.html'
};
assemble
.config({options: options})
.src('src/templates/pages/*.hbs')
.use(function (environment) {
environment.page.list.forEach(function (page) {
page.context.set('counter', counter);
var rendered = page.view.render();
page.view(rendered);
});
})
.dest('dist/');
});
// set up a default task
assemble.task('default', ['update-counter', 'site']);
// run the default task
assemble.run();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment