esbuild-hexo-minifier
raw JSON → 0.1.7 verified Fri May 01 auth: no javascript
A Hexo plugin that minifies static assets (HTML, CSS, JS, images, fonts) using esbuild. Version 0.1.7, stable with occasional updates. Differentiates from other Hexo minifiers by leveraging esbuild's speed for JS/CSS minification, but has known issues with some configurations and lacks comprehensive documentation.
Common errors
error esbuild-hexo-minifier: command not found ↓
cause Package not installed or not in PATH.
fix
Install locally: npm install esbuild-hexo-minifier --save-dev, then use npx esbuild-hexo-minifier or define script in package.json.
error Error: Cannot find module 'esbuild' ↓
cause esbuild peer dependency not installed.
fix
Run npm install esbuild --save-dev to install esbuild alongside the minifier.
error hexo generate && esbuild-hexo-minifier throws 'Permission denied' ↓
cause Global installation requires superuser privileges; local installation does not.
fix
Avoid global install; use local dev dependency and run via npm script.
error Minified file is larger than original (images or fonts) ↓
cause Default esbuild minification for binary assets may increase size due to encoding.
fix
Skip image/font minification by not including those file types in the processed assets, or use dedicated image minification tools.
Warnings
gotcha Minifier may break custom Hexo scripts or generate unexpected output if asset paths contain special characters. ↓
fix Review output assets and manually verify minification; consider using quotes in configuration if paths have spaces.
deprecated Global installation is discouraged; use npx or local dev dependency instead. ↓
fix Install locally with --save-dev and run via npx or npm script.
gotcha No configuration options: the minifier applies default settings without customization. ↓
fix If customization is needed, consider alternative Hexo minifier plugins like hexo-all-minifier.
gotcha Non-JS assets (images, fonts) are minified using default esbuild loaders which may produce larger files or unsupported formats. ↓
fix Disable image/font minification by not adding those file types, or use dedicated tools like gulp-imagemin.
breaking In version 0.1.5, the CLI name changed from 'esbuild-hexo-minifier' to 'esbuild-hexo-minifier' (same name, but script invocation changed). ↓
fix Run 'npx esbuild-hexo-minifier' instead of previous script name if upgrading from below 0.1.5.
Install
npm install esbuild-hexo-minifier yarn add esbuild-hexo-minifier pnpm add esbuild-hexo-minifier Imports
- esbuild-hexo-minifier (CLI) wrong
require('esbuild-hexo-minifier')correctnpx esbuild-hexo-minifier - package.json script wrong
"build": "hexo generate && node esbuild-hexo-minifier"correct"build": "hexo generate && esbuild-hexo-minifier" - default export (no API) wrong
import minifier from 'esbuild-hexo-minifier'correctNo import needed; rely on CLI.
Quickstart
npm install esbuild-hexo-minifier --save-dev
# Add to package.json scripts:
"scripts": {
"build": "hexo generate && esbuild-hexo-minifier"
}
npm run build