node package manager
We need your input. Help make JavaScript better: Take the 2017 JavaScript Ecosystem survey »



A very tiny library to invoke callbacks

To install simply run:

npm install cbrun

This lib implements only one function. You can pass array of errors, what you pass to nested callbacks. On second argument you must put callback reference, third and further - it is arguments of callback, excluding error.

function callbackHandler(errors[], callback, [arg_0, arg_1, ...]);

Or you can put one error, but do not forget put callback anyway.

function callbackHandler(error, callback, [arg_0, arg_1, ...]);

This function exports to module, so you need to require it first:

var callbackHandler = require('cbrun');
var fs = require('fs');
//Our function, what invokes callback 
function readFiles(callback) {
  fs.readFile('file1', function (err, data1) {
    fs.readFile('file2', function (err1, data2) {
        //You dont need to check error in nested callbacks, only on endpoint 
        callbackHandler([err, err1], callback, data1, data2); 
//Usage of this function 
readFiles(function (err, fileData1, fileData2) {
  if (err) {
  console.log(fileData1.toString(), fileData2.toString());

If you find bug, please open issue. Thanks ;)