npm

Check out our latest tech talk, "JavaScript Supply Chain Security" presented by VP of Security, Adam Baldwin.Watch it here »

kompression

1.0.0 • Public • Published

Kompression

npm

This is a fork of koa-compress with support for brotli compression.

Because zlib and iltorb options doesn't have much in common so including support for brotli would be a breaking change.

I'm trimming down the available options in this package down to just filter and threshold.

Example

const compress = require('kompression')
const Koa = require('koa')
 
const app = new Koa()
app.use(
    compress({
        filter: function(content_type) {
            return /text/i.test(content_type)
        },
        threshold: 2048
    })
)

Options

filter

An optional function that checks the response content type to decide whether to compress. By default, it uses compressible.

threshold

Minimum response size in bytes to compress. Default 1024 bytes or 1kb.

Manually turning compression on and off

You can always enable compression by setting this.compress = true. You can always disable compression by setting this.compress = false. This bypasses the filter check.

app.use((ctx, next) => {
    ctx.compress = true
    ctx.body = fs.createReadStream(file)
})

install

npm i kompression

Downloadsweekly downloads

21

version

1.0.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability