Registry / devops / esbuild-plugin-compressor

esbuild-plugin-compressor

JSON →
library1.0.1jsnpmunverified

An esbuild plugin for compressing output files with gzip or brotli after bundling. Current version 1.0.1, released in 2023 with infrequent updates. It supports filtering by file type and optional deletion of originals. Differentiators include a simple API, TypeScript types, and compatibility with esbuild >=0.17.19. Compared to alternatives like esbuild-plugin-compress or manual post-build scripts, this plugin is lightweight and straightforward.

npm install esbuild-plugin-compressor
INSTALL
IMPORT
SIG · ESBUILD-PLUGIN-COM
E
esbuild-plugin-compressor
devopsjavascriptv1.0.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

compressor
import { compressor } from 'esbuild-plugin-compressor'
import compressor from 'esbuild-plugin-compressor'
Default export is not available; must use named import
compressor
import { compressor } from 'esbuild-plugin-compressor'
const compressor = require('esbuild-plugin-compressor')
Package is ESM-only; CommonJS require will fail unless using a bundler or Node's ESM support

Bundles a TypeScript entry point and compresses output JS and CSS files using brotli.

import * as esbuild from 'esbuild'; import { compressor } from 'esbuild-plugin-compressor'; await esbuild.build({ entryPoints: ['src/index.ts'], bundle: true, outfile: 'dist/index.js', plugins: [ compressor({ fileTypes: ['js', 'css'], compressType: 'brotli', }), ], });
Debug
Known issues
gotchaIf fileTypes is not provided or is an empty array, no files will be compressed.
fix
Always specify fileTypes with at least one extension, e.g., ['js', 'css'].
affects: >=1.0.0
gotchaThe plugin compresses files after esbuild writes them; ensure outdir or outfile outputs are in place.
fix
Verify that esbuild's output matches the plugin's expectations (same directory or specified outdir).
affects: >=1.0.0
Errors
Common errors & fixes
Error: [plugin] compressor: No files matched the given fileTypes.
The fileTypes option did not match any output files (e.g., extensions without dot).
fix
Use extensions with leading dot in fileTypes, e.g., ['js'] not ['js'] but note that examples show ['js', 'css'] without dot, but the plugin internally adds dot if missing? Check source; safer to include dot. Actually from README: fileTypes: ['js', 'css'] works. The error occurs if no output files have those extensions.
Upgrade
Version history
1.0.1latest on npm
Audit
Dependencies
esbuildrequiredPeer dependency required for plugin functionality
Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-plugin-compressor — npm install esbuild-plugin-compressor · libregistry