JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 54308
  • Score
    100M100P100Q146676F
  • License MIT

Assemble plugin (^0.6.0) for loading globs of views onto custom view collections. Also works with verb or other Templates.js based applications.

Package Exports

  • assemble-loader

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (assemble-loader) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

assemble-loader NPM version NPM downloads Build Status

Assemble plugin (^0.6.0) for loading globs of views onto custom view collections. Also works with verb or other Templates.js based applications.

Install

Install with npm:

$ npm install assemble-loader --save

Usage

var assemble = require('assemble');
var loader = require('assemble-loader');
var app = assemble()
  .use(loader());

// optionally pass glob patterns to the plugin (you can only
// call the plugin once using this pattern)
var app = assemble()
  .use(loader('foo/*.hbs'));

// and/or use the `.loadViews()` method added by the plugin
app.create('pages')
  .use(loader('foo/*.hbs'))
  .loadViews('bar/*.hbs')
  .loadViews('baz/*.hbs')
  .loadViews('qux/*.hbs');

Collections

All collections

When the plugin is added to the app instance (as in the previous example), a .load method will also be added to every collection created.

var app = assemble()
  .use(loader());

// cache views on `app.views.posts`
app.create('posts')
  .load('content/*.md');

// cache views on `app.views.docs`
app.create('docs')
  .load('docs/*.md');

Specific collections

If you only want to add the loader to a specific collection, you can pass the plugin to the .use method on the collection.

var app = assemble();

// `create` returns the collection instance
app.create('posts')
  .use(loader())
  .load('content/*.md');

// this works too, since `create` adds methods to `app` 
// for the collection
app.posts
  .load('*.hbs')
  .load('*.txt');

You might also be interested in these projects:

  • assemble: Assemble is a powerful, extendable and easy to use static site generator for node.js. Used… more | homepage
  • templates: System for creating and managing template collections, and rendering templates with any node.js template engine.… more | homepage
  • verb: Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

Generate readme and API documentation with verb:

$ npm install verb && npm run docs

Or, if verb is installed globally:

$ verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on May 07, 2016.