tree: 6103db2df2558a861181035e5ac126feb7242421 [path history] [tgz]
  1. .idea/
  2. headers/
  3. methods/
  4. test/
  5. util/
  6. adm-zip.js
  7. MIT-LICENSE.txt
  8. package.json
  10. zipEntry.js
  11. zipFile.js

ADM-ZIP for NodeJS

ADM-ZIP is a pure JavaScript implementation for zip data compression for NodeJS.


With npm do:

$ npm install adm-zip

What is it good for?

The library allows you to:

  • decompress zip files directly to disk or in memory buffers
  • compress files and store them to disk in .zip format or in compressed buffers
  • update content of/add new/delete files from an existing .zip


There are no other nodeJS libraries that ADM-ZIP is dependent of


Basic usage

var AdmZip = require('adm-zip'); // reading archives var zip = new AdmZip("./"); var zipEntries = zip.getEntries(); // an array of ZipEntry records zipEntries.forEach(function(zipEntry) { console.log(zipEntry.toString()); // outputs zip entries information if (zipEntry.entryName == "my_file.txt") { console.log('utf8')); } }); // outputs the content of some_folder/my_file.txt console.log(zip.readAsText("some_folder/my_file.txt")); // extracts the specified file to the specified location zip.extractEntryTo(/*entry name*/"some_folder/my_file.txt", /*target path*/"/home/me/tempfolder", /*maintainEntryPath*/false, /*overwrite*/true); // extracts everything zip.extractAllTo(/*target path*/"/home/me/zipcontent/", /*overwrite*/true); // creating archives var zip = new AdmZip(); // add file directly zip.addFile("test.txt", new Buffer("inner content of the file"), "entry comment goes here"); // add local file zip.addLocalFile("/home/me/some_picture.png"); // get everything as a buffer var willSendthis = zip.toBuffer(); // or write everything to disk zip.writeZip(/*target file name*/"/home/me/"); // ... more examples in the wiki

For more detailed information please check out the wiki.

build status