Socket
Socket
Sign inDemoInstall

init-file-loader

Package Overview
Dependencies
0
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    init-file-loader

Loader for Template, for loading files onto a custom view collection inside a vinyl plugin.


Version published
Weekly downloads
78
increased by9.86%
Maintainers
1
Install size
6.97 kB
Created
Weekly downloads
 

Readme

Source

init-file-loader NPM version

Loader for Template, for loading files onto a custom view collection inside a vinyl plugin.

Install with npm

npm i init-file-loader --save

Usage

Register the loader

Register init-file-loader as a custom loader:

app.loader('file', [require('init-file-loader')]);

app is used as a placeholder for Verb, Assemble, Generate, or any application based on Template.

Use the loader

This is used in the built-in init plugin in Assemble and Verb.

  • The .getTask() method is used to get the name (id) of the currently running task.
  • The .create() method uses the id to create a custom template type for that task
  • The file loader is assigned to the template type. This basically means that the file loader will be called on every file that is loaded.

Example usage in a plugin

var through = require('through2');

module.exports = function myPlugin() {
  var app = this;
  var id = this.getTask();

  // create a template type for vinyl files and assign the loader
  if (!app.hasOwnProperty(id)) {
    // `id` is something like `task_foo`
    app.create(id, ['file']);
  }

  return through.obj(function (file, enc, cb) {

    // Here, we call the method we created above, which would 
    // be something like `app.task_foo()`. This is the same exact 
    // thing that `assemble.page()` does, or `verb.docs()`.
    // 
    // Instead of `pages` or `docs`, the loader we're using will 
    // convert the vinyl file to a template and add it to the 
    // `task_foo` collection.
    app[id](file);
    cb();
  }, function (cb) {
    app.pushToStream(id, this);
    cb();
  });
};
  • assemble: Static site generator for Grunt.js, Yeoman and Node.js. Used by Zurb Foundation, Zurb Ink, H5BP/Effeckt,… more
  • middleware-utils: Utils for Template middleware.
  • template: Render templates using any engine. Supports, layouts, pages, partials and custom template types. Use template… more
  • template-utils: Utils for Template.
  • verb: Documentation generator for GitHub projects. Extremely powerful, easy to use, can generate anything from API… more

Running tests

Install dev dependencies:

npm i -d && npm test

Contributing

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

Author

Jon Schlinkert

github/jonschlinkert twitter/jonschlinkert

License

Copyright (c) 2015 Jon Schlinkert Released under the MIT license.


This file was generated by verb-cli on April 29, 2015.

FAQs

Last updated on 29 Apr 2015

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc