8.3.0 • Published 6 years ago

@neutrinojs/image-minify v8.3.0

Weekly downloads
258
License
MPL-2.0
Repository
github
Last release
6 years ago

Neutrino Image Minify Middleware

@neutrinojs/image-minify is Neutrino middleware for optimizing images with imagemin.

NPM version NPM downloads Join the Neutrino community on Spectrum

Requirements

  • Node.js v6 LTS, v8, v9
  • Yarn v1.2.1+, or npm v5.4+
  • Neutrino v8

Installation

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

Yarn

❯ yarn add @neutrinojs/image-minify

npm

❯ npm install --save @neutrinojs/image-minify

Usage

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

// Using function middleware format
const images = require('@neutrinojs/image-loader');
const imagemin = require('@neutrinojs/image-minify');

// Use with default options
neutrino.use(images);
neutrino.use(imagemin);

// Usage showing default options
neutrino.use(imagemin, {
  imagemin: {
    plugins: [
      gifsicle(),
      svgo(),
      pngquant(),
      mozjpeg(),
      webp()
    ]
  },
  plugin: {
    name: '[path][name].[ext]',
    test: /\.(png|jpg|jpeg|gif|webp)$/
  },
  useId: 'imagemin',
  rules: ['svg', 'img'],
  pluginId: 'imagemin',
});
// Using object or array middleware format

// Use with default options
module.exports = {
  use: ['@neutrinojs/image-minify']
};

// Usage showing default options
module.exports = {
  use: [
    ['@neutrinojs/image-minify', {
      imagemin: {},
      plugin: {
        name: '[path][name].[ext]',
        test: /\.(png|jpg|jpeg|gif|webp)$/
      },
      rules: ['svg', 'img'],
      pluginId: 'imagemin'
    }]
  ]
};
  • imagemin: Set options for imagemin.
  • plugin: Set options for imagemin-webpack's ImageminWebpackPlugin.
  • rules: Specify rules for the application of imagemin.
  • pluginId: The imagemin plugin identifier. Override this to add an additional imagemin plugin instance.

Customization

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

Rules

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

NameDescriptionEnvironments and Commands
imgOptimize JPEG, PNG, GIF, and WEBP files imported from modules. Contains a single loader named imagemin.all
svgOptimize SVG files imported from modules. Contains a single loader named imagemin.all

Plugins

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

NameDescriptionEnvironments and Commands
imageminOptimize any images added by other webpack plugins (e.g. copy-webpack-plugin).all

Contributing

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

8.3.0

6 years ago

8.2.3

6 years ago

8.2.2

6 years ago

8.2.1

6 years ago

8.2.0

6 years ago

8.1.2

6 years ago

8.1.1

6 years ago

8.1.0

6 years ago

8.0.18

6 years ago

8.0.17

6 years ago

8.0.16

6 years ago

8.0.15

6 years ago

8.0.14

6 years ago

8.0.13

6 years ago

8.0.12

6 years ago

8.0.11

6 years ago

8.0.10

6 years ago

8.0.9

6 years ago

8.0.8

6 years ago

8.0.8-next.3

6 years ago

8.0.8-next.2

6 years ago

8.0.8-next.1

6 years ago

8.0.7

6 years ago

8.0.6

6 years ago

8.0.6-next.1

6 years ago

8.0.5

6 years ago

8.0.4

6 years ago

8.0.4-next.4

6 years ago

8.0.4-next.3

6 years ago

8.0.4-next.2

6 years ago

8.0.4-next.1

6 years ago

8.0.3

6 years ago

8.0.2

6 years ago

8.0.1

6 years ago

8.0.0

6 years ago

8.0.0-next.2

6 years ago

8.0.0-next.1

6 years ago

8.0.0-next.0

6 years ago