rechoir
Require any supported file as a node module.
What is it?
This module can find, require and register any file type the npm ecosystem has a module loader for.
Currently supported extensions:
.co, .coffee, .csv, .iced, .ini, .js, .json, .jsx, .litcoffee, .ls, .toml, .xml, .yaml, .yml
Note: If you'd like to add a new extension, please make a PR for interpret.
API
registerFor(filepath, requireFrom)
Look for a module loader associated with the provided file and attempt require it. If necessary, run any setup required to inject it into require.extensions. If calling this method is successful (aka: it doesn't throw), you can now require files of the type you requested natively.
filepath
A file whose type you'd like to register a module loader for.
requireFrom
An optional path to start searching for the module required to load the requested file. Defaults to the directory of filepath
.
Note: While rechoir will automatically load and register transpilers like coffee-script
, you must provide a local installation. The transpilers are not bundled with this module..
Usage
var rechoir = require('rechoir');
rechoir.registerFor('path/to/file.coffee');
require('file.coffee');
interpret
The underlying interpret module.