JSPM

  • Created
  • Published
  • Downloads 87062
  • Score
    100M100P100Q69141F
  • License MIT

Brotli compression/decompression with native bindings

Package Exports

  • iltorb

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (iltorb) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

iltorb

NPM Version Build Status

iltorb is a Node.js package offering native bindings for the brotli compression library.

Usage

Install

npm install iltorb

Async

compress(buffer[, brotliParams], callback)

const compress = require('iltorb').compress;

compress(input, function(err, output) {
  // ...
});

decompress(buffer, callback)

const decompress = require('iltorb').decompress;

decompress(input, function(err, output) {
  // ...
});

Sync

compressSync(buffer[, brotliParams])

const compressSync = require('iltorb').compressSync;

try {
  var output = compressSync(input);
} catch(err) {
  // ...
}

decompressSync(buffer)

const decompressSync = require('iltorb').decompressSync;

try {
  var output = decompressSync(input);
} catch(err) {
  // ...
}

Stream

compressStream([brotliParams])

const compressStream = require('iltorb').compressStream;
const fs = require('fs');

fs.createReadStream('path/to/input')
  .pipe(compressStream())
  .pipe(fs.createWriteStream('path/to/output'));

decompressStream()

const decompressStream = require('iltorb').decompressStream;
const fs = require('fs');

fs.createReadStream('path/to/input')
  .pipe(decompressStream())
  .pipe(fs.createWriteStream('path/to/output'));

brotliParams

The compress, compressSync and compressStream methods may accept an optional brotliParams object to define some or all of brotli's compression settings.

const brotliParams = {
  mode: 0,
  quality: 11,
  lgwin: 22,
  lgblock: 0
};