Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

gulp-zip

sindresorhus430.5kMIT6.1.0TypeScript support: definitely-typed

ZIP compress files

gulpplugin, zip, archive, archiver, compress, compression, file

readme

gulp-zip

ZIP compress files

Install

npm install --save-dev gulp-zip

Usage

import gulp from 'gulp';
import zip from 'gulp-zip';

export default () => (
    gulp.src('src/*')
        .pipe(zip('archive.zip'))
        .pipe(gulp.dest('dist'))
);

API

Supports streaming mode.

zip(filename, options?)

filename

Type: string

options

Type: object

compress

Type: boolean\ Default: true

modifiedTime

Type: Date\ Default: undefined

Overrides the modification timestamp for all files added to the archive.

Tip: Setting it to the same value across executions enables you to create stable archives that change only when the contents of their entries change, regardless of whether those entries were "touched" or regenerated.

buffer

Type: boolean\ Default: true

If true, the resulting ZIP file contents will be a buffer. Large zip files may not be possible to buffer, depending on the size of Buffer MAX_LENGTH.

If false, the ZIP file contents will be a stream.

We use this option instead of relying on gulp.src's buffer option because we are mapping many input files to one output file and can't reliably detect what the output mode should be based on the inputs, since Vinyl streams could contain mixed streaming and buffered content.