vite-plugin-image-optimize
v2.0.1
Published
Vite plugin that generates AVIF and WebP images and optimizes all image assets during the build process for better performance.
Downloads
101
Maintainers
Readme
EN | FR
BrowserUX Image Optimize
vite-plugin-image-optimize is a Vite plugin that automatically generates .avif and .webp versions of your images and optimizes all your JPG, PNG, SVG, WebP, and AVIF files during production builds.
Features
- 🖼️ Generates
.avifand.webpfrom.jpg/.pngin/public/img - 🚀 Optimizes images in
/dist/img(JPG, PNG, SVG, WebP, AVIF) - ⚡ Parallel processing with
Promise.allfor fast builds - 🔁 Skips pre-build generation when output is already up to date
- 🔍 Supports glob-based file exclusion
- 🔧 Configurable quality settings per format
- 📦 Optionally logs detailed per-file compression stats
- 🛠️ Powered by sharp and svgo
Installation
npm install vite-plugin-image-optimize --save-devUsage
import { defineConfig } from 'vite'
import imageOptimize from 'vite-plugin-image-optimize'
export default defineConfig({
plugins: [
imageOptimize({
jpegQuality: 80,
pngQuality: 80,
webpQuality: 75,
avifQuality: 50,
webpEnable: true,
avifEnable: true,
exclude: [],
logListings: true
})
]
})Options
| Option | Type | Default | Description |
| --- | --- | --- | --- |
| jpegQuality | number | 80 | JPEG compression quality (0-100) |
| pngQuality | number | 80 | PNG compression quality (0-100) |
| webpQuality | number | 75 | WebP conversion/compression quality (0-100) |
| avifQuality | number | 50 | AVIF conversion/compression quality (0-100) |
| webpEnable | boolean | true | Enable WebP generation during pre-build |
| avifEnable | boolean | true | Enable AVIF generation during pre-build |
| exclude | string[] | [] | Glob patterns to exclude from all processing |
| logListings | boolean | true | Enable detailed per-file logging in the terminal |
Migrating from v1
| v1 option | v2 equivalent | Notes |
| --- | --- | --- |
| pngQuality | pngQuality | Type changed: [number, number] → number (0-100) |
| webpFormats | (removed) | Plugin always targets .jpg/.jpeg/.png |
| webpExclude | exclude | Now applies to all processing phases |
Documentation
For detailed documentation, see docs/index.md.
License
MIT © 2025 Effeilo
