# archiverjs/node-archiver

a streaming interface for archive generation

Repository: https://github.com/archiverjs/node-archiver
Canonical: https://ross.abutalabs.com/products/node-archiver
Homepage: https://www.archiverjs.com
Language: JavaScript
License: MIT
License Family: permissive
Topics: javascript, nodejs, archiver, zip, tar
Last push: 2026-08-04T06:40:18+00:00

## Health v2 (maintenance only)
Score: 81/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 96, release rhythm 51, longevity 100
- inputs: {"age_days": 5076, "days_push": 29, "days_rel": 117, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2974, forks 249 (observed 2026-08-28T04:07:32.934476+00:00)

## What it is
Archiver is a Node.js library providing a streaming interface for generating archive files such as ZIP and TAR, with optional GZIP compression. It supports appending files, directories, globs, buffers, and streams through a unified composition API and can be extended with custom archive formats.

## Use cases
- create zip files in nodejs
- generate tar archives programmatically
- stream files into an archive without loading everything in memory
- compress a directory into a zip for download
- build archives on the fly in an express server
- append streams and buffers to a zip archive

## When to choose
- you need to create ZIP or TAR archives in Node.js with streaming, memory-efficient processing
- you want to pipe archive output directly to files, HTTP responses, or other streams
- you need to mix sources like files, directories, globs, buffers, and streams in one archive

## When to avoid
- you need to extract or read existing archives rather than create them
- you need archive formats beyond ZIP, TAR, and GZIP without writing a custom format plugin
- you are not working in a Node.js environment

## Facets
- artifact type: library
- maturity: stable
- function: compression, file-system, streaming
- domain: files, developer-tools, backend
- platform: -
- tags: zip, tar, gzip, archive-generation, streams, nodejs, javascript

## Member repositories
- archiverjs/node-archiver (main) score 81

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:32.934476+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:31:35.441950+00:00, confidence not recorded.
  - readme: https://github.com/archiverjs/node-archiver (fetched 2026-08-28T04:07:32.934476+00:00, sha 201dd93f2929)
  - homepage: https://www.archiverjs.com (fetched 2026-08-29T09:47:04.431677+00:00, sha 7a8fc1e56b26)
  - site_page: https://www.archiverjs.com/docs/archive-formats (fetched 2026-08-29T09:47:04.444103+00:00, sha 73d208a757e7)
  - site_page: https://www.archiverjs.com/docs/quickstart (fetched 2026-08-29T09:47:04.440506+00:00, sha c3085aea58d8)
  - site_page: https://www.archiverjs.com/docs/archiver (fetched 2026-08-29T09:47:04.442296+00:00, sha de37e940dd69)
- Data as of 2026-08-30T08:39:29.467469+00:00.
