@putout/engine-loader

load plugins and prepare them to run

Usage no npm install needed!

<script type="module">
  import putoutEngineLoader from 'https://cdn.skypack.dev/@putout/engine-loader';
</script>

README

@putout/engine-loader NPM version

Load 🐊Putout Plugins and Processors.

Install

npm i @putout/engine-loader

Env Variables

When you need to get things working with Yarn PnP, and using custom plugins formatters or processers, add env variable PUTOUT_YARN_PNP with name of a package that contains dependencies you need.

Code Example

loadPlugins

const {loadPlugins} = require('@putout/engine-loader');

const pluginNames = [
    'remove-unusede-variables',
];

const rules = {
    'remove-unused-variables': 'on',
};

const plugins = loadPlugins({
    cache: true, //default
    pluginNames,
    rules,
});

Babel Plugins

You can use babel plugins with help of babel/ prefix.

Example Let's use two plugins:

  • babel-plugin-transform-inline-consecutive-adds
  • @babel/plugin-codemod-object-assign-to-object-spread

@putout/engine-loader will gues the prefix of plugin :).

const pluginNames = [
    'babel/transform-inline-consecutive-adds',
    'babel/codemod-object-assign-to-object-spread',
];

const plugins = loadPlugins({
    pluginNames,
});

loadProcessors

const {loadProcessors} = require('@putout/engine-loader');

const plugins = loadProcessors({
    processors: [
        ['javascript', 'on'],
        ['markdown', 'off'],
    ],
});

License

MIT