@tayloredtechnology/autoloader

0.2.11 • Public • Published

autoloader

This module is an extension of the awesome autoRequire module. It provides some syntactical sugar and segregation of production and development environments.

Not all npm modules are capable of being autoloaded, as such this module hooks into global variable: exModules for compatibility exclusion.

Primary benefit is to avoid 10-15 lines of require and const declarations in every file across a project.

Deployment

Quickstart overview of getting autoloader deployed.

Installing

npm i -P @tayloredtechnology/autoloader

Examples

# Initial Setup
loader = require('autoLoader')
loader.init({aliases: {sh: 'shelljs'}, exModules: ['per-env']}
global.autoLoader = loader.general

# Production module:
$ = autoLoader('js-yaml')

# or
$ = autoLoader(['js-yaml', 'shelljs'])

# Using
$.jsYaml()

aliases can also be supplied

$ = autoLoader('shelljs', {sh: 'shelljs'})

# both are available for use
$.shelljs()
$.sh()

Development

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

  • Node 6.12.x or higher (LTS when development commenced)
  • OneFlow CLI tool available in the repo, suggest using a global install with npm i -g @tayloredtechnology/oneflow for convenince
  • RedRun - optional but suggested

Installing

A step by step series of examples that tell you how to get a development env running

git clone git@github.com:TayloredTechnology/autoloader.git
cd autoloader
npm install

Running the tests

TAP is used for all tests

# Execute all application tests
npm test

Code Coverage is provided by CodeCov.

And coding style tests

XO is used with Prettier for linting & code style.

npm run lint

Built With

Contributing

Please read CONTRIBUTING.md for the process for submitting pull requests to us. All contributors agree to follow and abide by this project's Code of Merit (Conduct).

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the Mozilla Public License Version 2.0 - see the LICENSE file for details

Acknowledgments

  • NPM Community for consistenly making packages that accelerate development work
  • Test Anything Protocol for consistenly accelerating Feature Driven Design

Readme

Keywords

none

Package Sidebar

Install

npm i @tayloredtechnology/autoloader

Weekly Downloads

7

Version

0.2.11

License

SEE LICENSE IN LICENSE

Unpacked Size

11.4 kB

Total Files

4

Last publish

Collaborators

  • keidrych