index.js
function load(PATH, sequelize, opts) {
  var files = fs.readdirSync(PATH),
    models = {};
  opts = opts || {};

  if (opts.exclude) {
    removeAll(opts.exclude, files);
  }

  files.forEach(function (file) {
    if (fs.statSync(path.join(PATH, file)).isDirectory()) {
      models[file] = load(path.join(PATH, file), sequelize, opts);
    } else {
      file = file.split('.')[0];
      var model = sequelize.import(path.join(PATH, file))
      models[model.name] = model;
    }
  });
  return models;
}
function load(PATH, sequelize, opts) {
  var files = fs.readdirSync(PATH),
    models = {};
  opts = opts || {};

  if (opts.exclude) {
    removeAll(opts.exclude, files);
  }

  files.forEach(function (file) {
    if (fs.statSync(path.join(PATH, file)).isDirectory()) {
      models[file] = load(path.join(PATH, file), sequelize, opts);
    } else {
      file = file.split('.')[0];
      var model = sequelize.import(path.join(PATH, file))
      models[model.name] = model;
    }
  });
  return models;
}
function load ( PATH , sequelize , opts ) { var files = fs . readdirSync ( PATH ) , models = { } ; opts = opts || { } ; if ( opts . exclude ) { removeAll ( opts . exclude , files ) ; } files . forEach ( function ( file ) { if ( fs . statSync ( path . join ( PATH , file ) ) . isDirectory ( ) ) { models [ file ] = load ( path . join ( PATH , file ) , sequelize , opts ) ; } else { file = file . split ( '.' ) [ 0 ] ; var model = sequelize . import ( path . join ( PATH , file ) ) models [ model . name ] = model ; } } ) ; return models ; }
Function for searching and loading sequelize models

@param {Object} PATH root location to search
@param {Object} sequelize sequelize connection
@return {Object}

@api public
Function for searching and loading sequelize models