nuxt-community / imagemin-module

Automatically optimize (compress) all images used in Nuxt.js
MIT License
50 stars 1 forks source link
image image-optimization image-processing imagemin images nuxt nuxt-module vuejs

@nuxtjs/imagemin

npm version npm downloads Github Actions CI Codecov License

Automatically optimize (compress) all images used in Nuxt.js

📖 Release Notes

Setup

  1. Add @nuxtjs/imagemin dependency to your project
yarn add --dev @nuxtjs/imagemin # or npm install --save-dev @nuxtjs/imagemin
  1. Add @nuxtjs/imagemin to the buildModules section of nuxt.config.js
export default {
  buildModules: [
    // Simple usage
    '@nuxtjs/imagemin',

    // With options
    ['@nuxtjs/imagemin', { /* module options */ }]
  ]
}

:warning: If you are using Nuxt < v2.9 you have to install the module as a dependency (No --dev or --save-dev flags) and use modules section in nuxt.config.js instead of buildModules.

Using top level options

export default {
  buildModules: [
    '@nuxtjs/imagemin'
  ],
  imagemin: {
    /* module options */
  }
}

Options

See image-minimizer-webpack-plugin for the complete list of options available.

enableInDev

Images will be minified in development mode, if this option is set to true.

This could increase the build time.

minimizerOptions

plugins: [
  ['gifsicle', { interlaced: true }],
  ['jpegtran', { progressive: true }],
  ['optipng', { optimizationLevel: 5 }],
  ['svgo', { plugins: [{ removeViewBox: false }] }]
]

Development

  1. Clone this repository
  2. Install dependencies using yarn install or npm install
  3. Start development server using npm run dev

License

MIT License

Copyright (c) Nuxt Community