to-exports

0.1.0 • Public • Published

to-exports Build Status NPM version

Create exports from a directory of non-javascript or javascript files.

This was ported from export-files, use that project if you only want to export a directory of JavaScript files and you want the fastest possible way to do it besides defining each file explicitly.

Install with npm

npm i to-exports --save

Usage

Specify the directory with files to export (this is a required argument):

module.exports = require('export-files')(__dirname);
//=> {a: [function], b: [function], c: [function]}

Params

module.exports = require('export-files')(dir, patterns, recurse, options, fn);
  • dir {String}: (required) directory with files to export.
  • patterns {String|Array|RegExp}: (optional) glob patterns or regex for filtering files
  • recurse {Boolean|Object}: (optional) or options. When true reads directories recursivly. Default is false.
  • options {Object}: (optional) options for filtering, reading, and recursion.
    • read {Function}: function for reading or requiring files
    • renameKey {Function}: function for naming keys on the returned object
    • filter {Function}: function for filtering files
  • fn {Function}: (optional) pass a custom reader function.

Examples

glob patterns

Filter and require only .json files:

module.exports = require('export-files')(__dirname, '**/*.json');

Filter and require only .yml files, with a custom

module.exports = require('export-files')(__dirname, '**/*.json');

Regex

Filter and require only .js files:

module.exports = require('export-files')(__dirname, /\.js$/);

Related

  • map-files: Return an object for a glob of files. Pass a rename function for the keys, or a parse function for the content, allowing it to be used for readable or require-able files.
  • micromatch: Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch (10-45x faster on avg). Just use minimatch.isMatch() instead of multimatch() or minimatch().
  • file-reader: Read a glob of files, dynamically choosing the reader or requiring the files based on the file extension.

Run 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 (c) 2014-2015 Jon Schlinkert
Released under the MIT license


This file was generated by verb-cli on March 18, 2015.

Package Sidebar

Install

npm i to-exports

Weekly Downloads

13

Version

0.1.0

License

MIT

Last publish

Collaborators

  • jonschlinkert