minification for astro static sites
https://zokki.net
.vscode | ||
src | ||
.gitignore | ||
.npmignore | ||
.prettierrc | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md | ||
tsconfig.json |
@zokki/astro-minify
This package helps you minify HTML, CSS, and SVG files within your static Astro site, resulting in a smaller bundle size and potentially faster loading times.
Note
astro-minify
only for statically generated build and pre-rendered routes.
Installation
-
Install with npm.
npm install @zokki/astro-minify
-
Import into the astro-config. The integration should be below most of the other integrations.
import { minify } from '@zokki/astro-minify'; export default defineConfig({ integrations: [minify()], });
Configuration
/**
* Toggle logging of all minified files
*
* @default
* true
*/
logAllFiles?: boolean;
/**
* Config for `@minify-html/node` or `false` to disable html minification
*
* @default
* {
* minify_css: true,
* minify_js: true,
* keep_comments: false,
* keep_ssi_comments: false,
* keep_closing_tags: true
* }
*/
html?: false | MinifyHtmlConfig;
/**
* Config for `lightningcss` or `false` to disable css minification
*
* @default
* { minify: true }
*/
css?: false | LightningcssConfig;
/**
* Config for `svgo` or `false` to disable svg minification
*
* @default
* {
* multipass: true,
* plugins: [
* {
* name: 'preset-default',
* params: {
* overrides: {
* // disable a default plugin
* cleanupIds: false,
* removeHiddenElems: false,
* removeEmptyContainers: false,
* },
* },
* },
* ],
* }
*/
svg?: false | SvgoConfig;
/**
* Config for cids-replacement or `false` to disable svg minification
*
* @default
* {
* prefix: 's-',
* cidRegex: /data-astro-cid-[a-zA-Z0-9]{7,10}/g,
* extensions: ['html', 'css']
* }
*/
minifyCid?: false | MinifyCidConfig;
License
MIT © Tim-Niclas Oelschläger