Socket
Socket
Sign inDemoInstall

hexo-yam

Package Overview
Dependencies
Maintainers
0
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hexo-yam

Yet Another Minifier. Minify and compress html, js, css, svg, xml and json


Version published
Weekly downloads
131
decreased by-14.38%
Maintainers
0
Weekly downloads
 
Created
Source

hexo-yam

npm version Build Status codecov NPM Dependencies Known Vulnerabilities

Yet Another Minifier for Hexo. Minify HTML, JS, CSS, SVG, XML and JSON. Compress static web assets using gzip, brotli and zstd.

Table of contents

Installation

$ npm install --save hexo-yam

Options

minify:
  enable: true
  previewServer: true
  html:
  css:
  js:
  svg:
  gzip:
  brotli:
  xml:
  json:
  • enable - Enable the plugin. Defaults to true.
  • previewServer - Disable the plugin when running hexo server. Defaults to true.
  • html - See HTML section
  • css - See CSS section
  • js - See JS section
  • svg - See SVG section
  • gzip - See Gzip section
  • brotli - See Brotli section
  • xml - See XML section
  • json - See JSON section

HTML

minify:
  html:
    enable: true
    exclude:
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10. Set lower value to set higher priority and vice versa.
  • verbose - Verbose output. Defaults to false.
  • exclude - Exclude files. Support wildcard pattern(s) in a string or array.
  • globOptions - See globbing section.

For more options, see HTMLMinifier.

CSS

minify:
  css:
    enable: true
    exclude:
      - "*.min.css"
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • exclude - Exclude files. Support wildcard pattern(s) in a string or array.
  • level - Optimization level. Defaults to 2.
  • globOptions - See globbing section.

For more options, see clean-css.

JS

minify:
  js:
    enable: true
    exclude:
      - "*.min.js"
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • exclude - Exclude files. Support wildcard pattern(s) in a string or array.
  • compress - Compress options.
  • mangle - Mangle variable names. Defaults to true. Pass an object to specify mangle options.
  • output - Output options.
    • To retain comments, output: {comments: true}.
  • globOptions - See globbing section.

For more options, see Terser.

SVG

minify:
  svg:
    enable: true
    include:
      - "*.svg"
      - "!*.min.svg"
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
    • Exclude *.min.svg by default.
  • plugins - Plugin options.
    • Examples:
    plugins:
      # Retain comments
      removeComments: false
      # Do not remove unused ID attributes
      cleanupIds: false
    
    • For more options, see svgo.
  • globOptions - See globbing section.

XML

Remove whitespaces in xml.

minify:
  xml:
    enable: false
    include:
      - "*.xml"
      - "!*.min.xml"
  • enable - Enable the plugin. Defaults to false.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
    • Exclude *.min.xml by default.
  • removeComments - Remove comments in xml. Defaults to true.
  • globOptions - See globbing section.

For more options, see minify-xml.

JSON

Remove whitespaces in json.

minify:
  json:
    enable: false
    include:
      - "*.json"
      - "!*.min.json"
  • enable - Enable the plugin. Defaults to false.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
    • Exclude *.min.json by default.
  • globOptions - See globbing section.

Gzip

minify:
  gzip:
    enable: true
    include:
      - "*.html"
      - "*.css"
      - "*.js"
      - "*.txt"
      - "*.ttf"
      - "*.atom"
      - "*.stl"
      - "*.xml"
      - "*.svg"
      - "*.eot"
      - "*.json"
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
    • Support one-liner, include: ['*.html','*.css','*.js'].
    • Must include asterisk and single quotes. .html is invalid. '*.html' is valid.
  • globOptions - See globbing section.
  • level - Compression level; lower value may results in faster compression but slightly larger (compressed) file. Range 1-9. Defaults to 9, or the value of zlib.constants.Z_BEST_COMPRESSION

Brotli

minify:
  brotli:
    enable: true
    include:
      - "*.html"
      - "*.css"
      - "*.js"
      - "*.txt"
      - "*.ttf"
      - "*.atom"
      - "*.stl"
      - "*.xml"
      - "*.svg"
      - "*.eot"
      - "*.json"
  • enable - Enable the plugin. Defaults to true.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
  • globOptions - See globbing section.
  • level - Compression level. Range 1-11. Defaults to 11, or the value of zlib.constants.BROTLI_MAX_QUALITY

Zstd

minify:
  zstd:
    enable: false
    include:
      - "*.html"
      - "*.css"
      - "*.js"
      - "*.txt"
      - "*.ttf"
      - "*.atom"
      - "*.stl"
      - "*.xml"
      - "*.svg"
      - "*.eot"
      - "*.json"
  • enable - Enable the plugin. Defaults to false.
  • priority - Plugin's priority. Defaults to 10.
  • verbose - Verbose output. Defaults to false.
  • include - Include files. Support wildcard pattern(s) in a string or array.
  • globOptions - See globbing section.
  • level - Compression level. Range 1-22. Defaults to 3, or the value of DEFAULT_LEVEL

Cannot find module '@mongodb-js/zstd-linux-x64-gnu'

npm install --save @mongodb-js/zstd-linux-x64-gnu

  • @mongodb-js/zstd-darwin-arm64 (Apple Silicon)
  • @mongodb-js/zstd-darwin-x64 (Intel Mac)
  • @mongodb-js/zstd-linux-arm64-gnu
  • @mongodb-js/zstd-linux-arm64-musl (Alpine)
  • @mongodb-js/zstd-linux-x64-gnu
  • @mongodb-js/zstd-linux-x64-musl (Alpine)
  • @mongodb-js/zstd-win32-x64-msvc

Globbing

Use "globOptions" to customise how glob patterns match files. Refer to micromatch for available options.

  • basename is enabled by default, unless the pattern has a slash.
  • basename is disabled depending on each pattern.
  • This means the following options would work,
exclude:
  - "*foo.html" # basename is enabled
  - "**/bar/*/*.html" # basename is automatically disabled
  - "*baz.css" # basename is enabled
globOptions:
  basename: true # default
  • This behaviour doesn't apply to pattern that starts with ! (negation).
  • This limitation only applies to include: option used in svg, gzip and brotli.
  • This means the following options would not work,
include:
  - "!foo.svg"
  - "!**/bar/*/*.svg"
globOptions:
  basename: true
  • basename will stay disabled, if explicitly disabled in "globOptions".

Credits

All credits go to the following work:

Keywords

FAQs

Package last updated on 22 Jun 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc