JSPM

base-debug

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

Plugin for debugging your base application.

Package Exports

  • base-debug

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 (base-debug) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

base-debug NPM version Build Status

Plugin for debugging your base application.

Install

Install with npm:

$ npm i base-debug --save

Usage

To test-drive the plugin, add this to example.js (or just use the examples/example.js file in this project):

var debug = require('base-debug');
var Base = require('base');
var base = new Base();

base.use(debug('foo'));

var one = base.debug('one');
var two = base.debug('two');

one('this is one!');
two('this is two!');

Then, in the command line:

  • run DEBUG=base:* node example
  • then try DEBUG=base:one node example

(See the debug docs for more information about using debug on all platforms.)

Namespace

Inside your plugin, register the debug() plugin, passing the name of your plugin as the "namespace" to use:

// given you have a plugin named `base-foo`
function baseFoo(options) {
  return function(app) {
    app.use(debug('foo'));

    // then call the `app.debug` method
    var debug = app.debug();
    
    // then use it like this:
    debug('yelling abc: %s', 'ABC!');
    debug('yelling xyz: %s', 'XYZ!');
  }
}

When your plugin is registered, like this:

// Add your plugin
var base = new Base();
base.use(baseFoo());

and the DEBUG=base:foo command is used, you should see something like this in the terminal:

base-debug plugin - namespaces

(See the debug docs for more information about using debug on all platforms.)

Sub-namespaces

Optionally use "sub-namespaces":

function baseFoo(options) {
  return function(app) {
    app.use(debug('foo'));
  
    // namespace `foo:one`
    var one = app.debug('one');

    // namespace `foo:two`
    var two = app.debug('two');
    
    // then use it like this:
    one('yelling abc: %s', 'ABC!');
    two('yelling xyz: %s', 'XYZ!');
  }
}

When your plugin is registered, like this:

// Add your plugin
var base = new Base();
base.use(baseFoo());

and the following commands are used:

  • DEBUG=base:foo:*, or
  • DEBUG=base:foo:one, or
  • DEBUG=base:foo:two

You should see something like this in the terminal:

screen shot 2016-01-23 at 9 36 39 am

(See the debug docs for more information about using debug on all platforms.)

You might also be interested in these projects:

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

License

Copyright © 2016 Jon Schlinkert Released under the MIT license.


This file was generated by verb on January 23, 2016.