@neutrinojs/clean

    9.5.0 • Public • Published

    Neutrino Clean Middleware

    @neutrinojs/clean is Neutrino middleware for removing or cleaning build directories.

    NPM version NPM downloads

    By default, this plugin will remove all files inside webpack's output.path directory, as well as all unused webpack assets after every successful rebuild.

    Requirements

    • Node.js 10+
    • Yarn v1.2.1+, or npm v5.4+
    • Neutrino 9
    • webpack 4

    Installation

    @neutrinojs/clean can be installed via the Yarn or npm clients.

    Yarn

    ❯ yarn add --dev @neutrinojs/clean

    npm

    ❯ npm install --save-dev @neutrinojs/clean

    Usage

    @neutrinojs/clean can be consumed from the Neutrino API, middleware, or presets. Require this package and plug it into Neutrino:

    const clean = require('@neutrinojs/clean');
    
    // Use with default options
    neutrino.use(clean());
    
    // Usage shows the default values of this middleware:
    neutrino.use(
      clean({
        verbose: neutrino.options.debug,
        // Override pluginId to add an additional clean plugin instance
        pluginId: 'clean',
      }),
    );
    // Using in .neutrinorc.js
    const clean = require('@neutrinojs/clean');
    
    // Use with default options
    module.exports = {
      use: [clean()],
    };
    
    // Usage shows the default values of this middleware:
    module.exports = {
      use: [
        clean({
          verbose: neutrino.options.debug,
          // Override pluginId to add an additional banner plugin instance
          pluginId: 'clean',
        }),
      ],
    };

    Additional options can be specified to control the behavior of the underlying clean-webpack-plugin. See CleanWebpackPlugin's documentation for available options.

    Clean external directories

    Pass the dangerouslyAllowCleanPatternsOutsideProject: true option to remove directories outside of the project root. This is disabled by default to prevent deletion of unintended directories.

    module.exports = {
      use: [
        clean({
          dangerouslyAllowCleanPatternsOutsideProject: true,
        }),
      ],
    };

    Customization

    @neutrinojs/clean creates some conventions to make overriding the configuration easier once you are ready to make changes.

    Plugins

    The following is a list of plugins and their identifiers which can be overridden:

    Name Description NODE_ENV
    clean Removes directories before building. all

    Contributing

    This middleware is part of the neutrino repository, a monorepo containing all resources for developing Neutrino and its core presets and middleware. Follow the contributing guide for details.

    Install

    npm i @neutrinojs/clean

    DownloadsWeekly Downloads

    5,505

    Version

    9.5.0

    License

    MPL-2.0

    Unpacked Size

    20.9 kB

    Total Files

    4

    Last publish

    Collaborators

    • edmorley
    • helfi92
    • timkelty
    • eliperelman