Skip to content

Neutrino Style Minify Middleware

@neutrinojs/style-minify is Neutrino middleware for minifying styles using OptimizeCssAssetsPlugin. This middleware is usually only added during production builds.

NPM version NPM downloads

Requirements

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

Installation

@neutrinojs/style-minify can be installed via the Yarn or npm clients.

Yarn

❯ yarn add --dev @neutrinojs/style-minify

npm

❯ npm install --save-dev @neutrinojs/style-minify

Usage

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

const styleMinify = require('@neutrinojs/style-minify');

// Use with default options
neutrino.use(styleMinify());

// Usage showing overriding options
neutrino.use(
  styleMinify({
    pluginId: 'optimize-css',
    plugin: {
      assetNameRegExp: /\.css$/g,
      cssProcessorOptions: {},
      canPrint: true,
    },
  }),
);
// Using in .neutrinorc.js
const styleMinify = require('@neutrinojs/style-minify');

// Use with default options
module.exports = {
  use: [styleMinify()],
};

// Usage showing overriding options
module.exports = {
  use: [
    styleMinify({
      pluginId: 'optimize-css',
      plugin: {
        assetNameRegExp: /\.css$/g,
        cssProcessorOptions: {},
        canPrint: true,
      },
    }),
  ],
};

The plugin property is passed to optimize-css-assets-webpack-plugin.

Customization

@neutrinojs/style-minify 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
optimize-css Minifies css using OptimizeCssAssetsPlugin. 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.