Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
CLI for compressing files using the popular compress algorithms like Brotli and Gzip. Also this module works great with many CLI UI tools (Angular CLI, Vue CLI, create-react-app) and supports few option flags for each algorithm.
There are a couple of options flags such as gzip-level
, gzip-strategy
, gzip-memory-level
, brotli-param-mode
, brotli-quality
, brotli-size-hint
for extending algorithm flexibility. All flags can be declared via ENV variables (ENV variables have higher priority over CLI arguments).
You can enable verbose
mode for better visual representation which files were compressed and how long it took. Also you can customize your file output using output-file-format
command with predefined template [filename]-[hash]-[filename].[ext]
.
npm i gzipper -g
or locally to devDependencies
npm i gzipper -D
Globally usage.
gzipper [options] <path> [outputPath]
Locally usage.
"scripts": {
...
"gzipper": "gzipper"
}
npx
command if module was installed to dependencies or devDependencies "scripts": {
"compress": "npx gzipper --verbose ./dist"
}
"scripts": {
"build": "ng build && gzipper --verbose ./dist"
}
./gzipped
"scripts": {
"build": "ng build && gzipper --verbose ./dist ./gzipped"
}
Option | ENV | Description |
---|---|---|
-V, --version | output the version number | |
-v, --verbose | GZIPPER_VERBOSE | detailed level of logs |
-e, --exclude | GZIPPER_EXCLUDE | exclude file extensions from compression |
-i, --include | GZIPPER_INCLUDE | include file extensions for compression |
-gl, --gzip-level [level] | GZIPPER_GZIP_LEVEL | gzip compression level -1 (default), 0 (no compression) - 9 (best compression) |
-gm, --gzip-memory-level [memoryLevel] | GZIPPER_GZIP_MEMORY_LEVEL | amount of memory which will be allocated for compression 8 (default), 1 (minimum memory) - 9 (maximum memory) |
-gs, --gzip-strategy [strategy] | GZIPPER_GZIP_STRATEGY | compression strategy 0 (default), 1 (filtered), 2 (huffman only), 3 (RLE), 4 (fixed) |
--brotli | GZIPPER_BROTLI | enable brotli compression, Node.js >= v11.7.0 |
-bp, --brotli-param-mode [brotliParamMode] | GZIPPER_BROTLI_PARAM_MODE | default, text (for UTF-8 text), font (for WOFF 2.0 fonts) |
-bq, --brotli-quality [brotliQuality] | GZIPPER_BROTLI_QUALITY | brotli compression quality 11 (default), 0 - 11 |
-bs, --brotli-size-hint [brotliSizeHint] | GZIPPER_BROTLI_SIZE_HINT | expected input size 0 (default) |
-t, --threshold [threshold] | GZIPPER_THRESHOLD | exclude assets smaller than this byte size. 0 (default) |
--output-file-format [outputFileFormat] | GZIPPER_OUTPUT_FILE_FORMAT | output file format with default artifacts [filename].[ext].[compressExt], where: filename -> name of your file, ext -> file extension, compressExt -> compress extension (.gz, .br, etc), hash -> uniq uuid/v4 hash. Samples: [filename].[compressExt].[ext], test-[filename]-[hash].[compressExt].[ext], [filename]-[hash]-[filename]-tmp.[ext].[compressExt] |
-h, --help | output usage information |
ENV Variables have higher priority over CLI arguments.
I appreciate every contribution, just fork the repository and send the pull request with your changes.
FAQs
CLI for compressing files.
The npm package gzipper receives a total of 32,421 weekly downloads. As such, gzipper popularity was classified as popular.
We found that gzipper demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
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.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.