esrol-autoloader
Version:
An Autoloader Class for automatically including files.
75 lines (56 loc) • 1.89 kB
Markdown
[![NPM version][npm-image]][npm-url]
[![Build Status][travis-image]][travis-url]
[![Test coverage][coveralls-image]][coveralls-url]
An Autoloader Class for automatically including files.
*Part of [Esrol](https://github.com/esrol/esrol)*
```sh
$ npm install --save esrol-autoloader
```
| Node Version |
| ---- |
| >= 4.x |
```js
'use strict';
const Autoloader = require('esrol-autoloader');
let settings = {
getNamespaces: true,
getAsObject: true,
path: __dirname + '/app',
filesToSkip: ['controllers.skipMe', 'routes.skipMe']
};
let folders = new Autoloader(settings);
console.log(folders);
// { app:
// { controllers: { foo: [Function: Foo] },
// routes: { baz: [Object], foo: [Function: Foo] } },
// namespaces: [ 'controllers.foo', 'routes.baz.bar', 'routes.foo' ] }
```
<a name="Autoloader"></a>
<a name="new_Autoloader_new"></a>
An Autoloader Class for automatically including files.
Any contribution will be highly appreciated. Just make sure that:
1.Your code works.
2. You have 100% successful tests coverage.
3. You have comments in your code.
4. Follows eslint config. Exceptions are possible where that make sense.
To run the test suite, first install the dependencies, then run `npm test`:
```bash
$ npm install
$ npm test
```
[](https://github.com/esrol/esrol-autoloader/blob/master/LICENSE)
[]: https://badge.fury.io/js/esrol-autoloader.svg
[]: https://npmjs.org/package/esrol-autoloader
[]: https://travis-ci.org/esrol/esrol-autoloader.svg?branch=master
[]: https://travis-ci.org/esrol/esrol-autoloader
[]: https://coveralls.io/repos/esrol/esrol-autoloader/badge.svg
[]: https://coveralls.io/r/esrol/esrol-autoloader