{"maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"keywords":["compress","decompress","encode","decode"],"dist-tags":{"latest":"1.3.3"},"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"description":"A port of the Brotli compression algorithm as used in WOFF2","readme":"# Brotli.js\n\nBrotli.js is port of the [Brotli](http://tools.ietf.org/html/draft-alakuijala-brotli-01) compression algorithm (as used in the [WOFF2](http://www.w3.org/TR/WOFF2/) font format) to JavaScript. The decompressor is hand ported, and the compressor is ported\nwith Emscripten.  The original C++ source code can be found [here](http://github.com/google/brotli).\n\n## Installation and usage\n\nInstall using npm.\n\n    npm install brotli\n\nIf you want to use brotli in the browser, you should use [Browserify](http://browserify.org/) to build it.\n\nIn node, or in browserify, you can load brotli in the standard way:\n\n```javascript\nvar brotli = require('brotli');\n```\n\nYou can also require just the `decompress` function or just the `compress` function, which is useful for browserify builds.\nFor example, here's how you'd require just the `decompress` function.\n\n```javascript\nvar decompress = require('brotli/decompress');\n```\n\n## API\n\n### brotli.decompress(buffer, [outSize])\n\nDecompresses the given buffer to produce the original input to the compressor.\nThe `outSize` parameter is optional, and will be computed by the decompressor\nif not provided. Inside a WOFF2 file, this can be computed from the WOFF2 directory.\n\n```javascript\n// decode a buffer where the output size is known\nbrotli.decompress(compressedData, uncompressedLength);\n\n// decode a buffer where the output size is not known\nbrotli.decompress(fs.readFileSync('compressed.bin'));\n```\n\n### brotli.compress(buffer, isText = false)\n\nCompresses the given buffer. Pass optional parameters as the second argument.\n\n```javascript\n// encode a buffer of binary data\nbrotli.compress(fs.readFileSync('myfile.bin'));\n\n// encode some data with options (default options shown)\nbrotli.compress(fs.readFileSync('myfile.bin'), {\n  mode: 0, // 0 = generic, 1 = text, 2 = font (WOFF2)\n  quality: 11, // 0 - 11\n  lgwin: 22 // window size\n});\n```\n\n## License\n\nMIT\n","repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"users":{"miloc":true,"zuojiang":true,"goliatone":true,"markthethomas":true},"bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"license":"MIT","versions":{"1.0.0":{"name":"brotli","version":"1.0.0","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.0.0","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"f062e899dea65e8d95d716ea14b1c92506866b58","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.0.0.tgz","integrity":"sha512-7WveqsGtDq5Eqe/h1dyjIKuHywmi/bv+/zewi5QoaTpGqnns2TovcwKo2iaQS6fY6AkpnNzTqyaJhI+nRXuCyg==","signatures":[{"sig":"MEUCIBhQ+X3+mnyaOYszAwqdpIUQPkW1Wk7QfG4BQnHsegRLAiEAvq5j9ua7KmGyhRYGtwasEptHkIO+VJ3+TEWQM4kZbIA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"f062e899dea65e8d95d716ea14b1c92506866b58","gitHead":"bf2ec30a01199ee3551d1a7c478bd525e220e72e","scripts":{},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.0.2","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"0.10.21"},"1.0.1":{"name":"brotli","version":"1.0.1","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.0.1","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"ee068c0efbdcba1014915ddc8e5f3ce8756b9d97","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.0.1.tgz","integrity":"sha512-WzpwkvUXYNyBjFwA1KL+p7FsrFfgxF312RyVHlUFu/1/WPC4pXP4uiXx9fIe4kC5tNP/+dY1HokZiKRIaOgnDA==","signatures":[{"sig":"MEQCIGvR8vIExRCJgL6uXIKBzIdD3qULHCr+c/Ed5ms7MAtLAiB0XSVRC1MAZny8+ZRv3LdB3N/zWtOF0DSG19gpo8Znzg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"ee068c0efbdcba1014915ddc8e5f3ce8756b9d97","gitHead":"4981b6b8d4515e720dcf65138530a361f5b472fb","scripts":{},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"deprecated":"Bad compile","repository":{"url":"https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{}},"1.0.2":{"name":"brotli","version":"1.0.2","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.0.2","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"548fcb29d1145e01c016931e07dc8f1505dcca86","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.0.2.tgz","integrity":"sha512-QYozeJ5iEhcM0F+Vdd0MivPxXZQc+u5O9yDjmsExEsrU377I2VhbPW0Iii5zCwGeRi04w2RO0UZVGKgBAw7VdA==","signatures":[{"sig":"MEQCIEW6SqxESAm6pLmGsVAf4BIihpF3vr0djMzZqn+99udiAiBIpaUh8iMKb1X0DGEeIuXMv5sa7zxxuRJAFXzSXKSobA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"548fcb29d1145e01c016931e07dc8f1505dcca86","gitHead":"1c176aee7f2222e9023cccfc5545bd4deef9e0e5","scripts":{},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"1.4.28","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{}},"1.1.0":{"name":"brotli","version":"1.1.0","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.1.0","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"475e2f465180b4fc59999d89ddfc3dc8ba07a76d","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.1.0.tgz","integrity":"sha512-/iSBvlJzFe87bN7I0GupS4HtrhHAy7K74pBoiRe0aI7+AHQ3GjXi+DmcSrKj9mskG7cxNVHH0CtvKm73x6VQDg==","signatures":[{"sig":"MEYCIQD6ODrYV86tSFrPOYYLJYgh/EKH4YBaASwb13tnLtq07QIhAMmJXvSbm/cg8jvpoeYrCUEo0T58wYBVKafsryt0aBJT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"475e2f465180b4fc59999d89ddfc3dc8ba07a76d","gitHead":"d9f216d1d1d7926697f93e62b2c00656ca2a3e8e","scripts":{"test":"mocha"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"browserify":{"transform":["./src/transform"]},"repository":{"url":"https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.5.1","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"0.12.0","dependencies":{"brfs":"^1.4.0","pako":"^0.2.6","through":"^2.3.6"},"devDependencies":{"mocha":"^2.2.1"}},"1.2.0":{"name":"brotli","version":"1.2.0","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.2.0","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"b716947531fa780067886cda45fd770e8587edf0","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.2.0.tgz","integrity":"sha512-JF5r43J+nRYcqI38Za3Px6OT2kLoQpaSr02Xjx09ng3wjRtN4nrBmj/Yaa06TmmHQR63ceS1NnBG5Wbt2P37iQ==","signatures":[{"sig":"MEQCIAcp+n6eZZJJ6cjSFf7mZgFuMx7b/Ql1xuMUkaaJU10EAiBfTNaGVPvgpYBeOEpOEWDN7A6F0WXES8EIvn97gTbsJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"b716947531fa780067886cda45fd770e8587edf0","browser":{"./dec/dictionary-data.js":"./dec/dictionary-browser.js"},"gitHead":"e974146a5a38c8ff00f7866a05a238a6a334012d","scripts":{"test":"mocha"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"browserify":{"transform":["./src/transform"]},"repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.14.7","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"4.2.1","dependencies":{"brfs":"^1.4.0","pako":"^0.2.6","through":"^2.3.6"},"devDependencies":{"mocha":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/brotli-1.2.0.tgz_1459120847283_0.8294150321744382","host":"packages-16-east.internal.npmjs.com"}},"1.3.0":{"name":"brotli","version":"1.3.0","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.3.0","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"33d5b4e2aab9918efdcd56462f63eadadac0550b","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.3.0.tgz","integrity":"sha512-XDbEL2U/7rrwp3moTw03lu1P0mGPjBRZKXzb6CskaMtj3t2ZXl3s7qJvX1VztyWxo+AZ/LyPkzRUVQyXzjXSiA==","signatures":[{"sig":"MEUCIQCpjHSWZx4qDMMwcQ6c+zTkM064QT8X7rb61Ee+CURktAIgT5FyBQkFthpaDUxMF1CTM4OfvCvKMj7LiKRHo6A78pQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"33d5b4e2aab9918efdcd56462f63eadadac0550b","browser":{"./dec/dictionary-data.js":"./dec/dictionary-browser.js"},"gitHead":"c3ccc11964027dd0fcac4316a558cecab84dfc31","scripts":{"test":"mocha","prepublish":"make"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.14.4","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"4.1.1","dependencies":{"base64-js":"^1.1.2"},"devDependencies":{"mocha":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/brotli-1.3.0.tgz_1473579433713_0.7928538199048489","host":"packages-12-west.internal.npmjs.com"}},"1.3.1":{"name":"brotli","version":"1.3.1","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.3.1","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"352a6f3f6973c5a74fd4be04aba40b337b3b6a7e","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.3.1.tgz","integrity":"sha512-WdNdPkL8w9Fs1bqOMdR8HCyXLpdYa6r5lYIY0RqEm2iKNTKYFoVFexl3E7QnheDvKL6YJuc31eiAjppRu1OAtQ==","signatures":[{"sig":"MEQCIGHPXjpNfdaMgb6xZFZ44CYUzaFc3BxeuQs9ahuUfL3oAiAY7OOLiYInuYNZRCuAfvRKdKmBlbTpAsko3/V4+hxGJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"352a6f3f6973c5a74fd4be04aba40b337b3b6a7e","browser":{"./dec/dictionary-data.js":"./dec/dictionary-browser.js"},"gitHead":"da44b7ac2aaf9884ac6fdd8dff37970b8704c6bf","scripts":{"test":"mocha","prepublish":"make"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.14.4","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"4.1.1","dependencies":{"base64-js":"^1.1.2"},"devDependencies":{"mocha":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/brotli-1.3.1.tgz_1473824079123_0.6083398039918393","host":"packages-12-west.internal.npmjs.com"}},"1.3.2":{"name":"brotli","version":"1.3.2","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.3.2","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"525a9cad4fcba96475d7d388f6aecb13eed52f46","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.3.2.tgz","integrity":"sha512-K0HNa0RRpUpcF8yS4yNSd6vmkrvA+wRd+symIcwhfqGLAi7YgGlKfO4oDYVgiahiLGNviO9uY7Zlb1MCPeTmSA==","signatures":[{"sig":"MEUCIQCslZdNaasOVhNJQe3EKBtLIIClBjm8U3QwxdyhEH1aUgIgI7kDnbelWy1atP7L8f9neuKsL7ESzPkx3fWgLY/FLqE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"525a9cad4fcba96475d7d388f6aecb13eed52f46","browser":{"./dec/dictionary-data.js":"./dec/dictionary-browser.js"},"gitHead":"40d0b9d4a2ede5c1b2d240641094e70a47882b0c","scripts":{"test":"mocha","prepublish":"make"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"2.14.4","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"4.1.1","dependencies":{"base64-js":"^1.1.2"},"devDependencies":{"mocha":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/brotli-1.3.2.tgz_1493710188882_0.9105583857744932","host":"packages-12-west.internal.npmjs.com"}},"1.3.3":{"name":"brotli","version":"1.3.3","keywords":["compress","decompress","encode","decode"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","_id":"brotli@1.3.3","maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"homepage":"https://github.com/devongovett/brotli.js","bugs":{"url":"https://github.com/devongovett/brotli.js/issues"},"dist":{"shasum":"7365d8cc00f12cf765d2b2c898716bcf4b604d48","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/brotli/-/brotli-1.3.3.tgz","fileCount":19,"integrity":"sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==","signatures":[{"sig":"MEUCIQDh4al/LBJxyZTKC5ZAlvdZuNAnmhryVs+1aX4F0ZRXNAIgZlH355V9f8Aa5JylHSzTJkwpkZsVr2dRtgoEaci8qKw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1503586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioD1cACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp7qxAAjG+mMkjI+JYGZGKJ63BXhNia69ciFW1O/6n8gejtyKkvkM1k\r\n8ny3+hMeJmnF2dLinwkE5ZoSJcjx2Sa3KjMoEvhIBzukcfD2947ihWNENry9\r\nrqdxOXezySAtxtAkbS4yw/5Dmb/d+9AoenzMsgABVLVNJHX4TaM9voQB3f0X\r\nrK7AIATg4iS2vQwT1n86yjP/tobQx8BaofabrUk/8dWs6g1oaI1dcwDZTpQy\r\nQI4L7SO6sxyxh13UhFHSrr+MPV2PMGWJg5kCd2OKmCF1U9omtOXlj5Evh9Hk\r\nYcLT/5fh7mN3W1nN6VvN5tNV1Y0lnSVXCO3crxVeTPgGZSVNsw9yJeMOfqMn\r\nVH3oWqNNDbEw5trVupxct81eJKwpi+b2jjOWivHyIAGOqwvCKEsq0caDxPYR\r\nFQPGj5URNbsKdN/CiQ28CSjLzK8hzi+zFsQCOWI8szPQhyfw4nC672gYi2fL\r\n3RC2VyMOcbSPOBaqrcdEmGwGaJKxXw7+W0/bGmpOYg8apoHoBtc1R/W+M3VT\r\nSOdbIngXkfTi6F2horVq2pRwx7Ei61NEOy4kC6dumUeO6ZlYMsmIKVhWgV8x\r\nwYqfZn3mWdE29g2lrg9SwklEKGTU2ZgLnu9OwlgrGMFGO6EkSR2hlRzqVLat\r\naBAK2IR+yFE0MpoZu1EcUSFHst15p4t7yoI=\r\n=l9Ef\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"./dec/dictionary-data.js":"./dec/dictionary-browser.js"},"gitHead":"e36051345f6d27a56e5f39ea70d2f789b8574046","scripts":{"test":"mocha","prepublish":"make"},"_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"repository":{"url":"git+https://github.com/devongovett/brotli.js.git","type":"git"},"_npmVersion":"8.5.5","description":"A port of the Brotli compression algorithm as used in WOFF2","directories":{},"_nodeVersion":"16.15.0","dependencies":{"base64-js":"^1.1.2"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/brotli_1.3.3_1654668636143_0.8117438266432813","host":"s3://npm-registry-packages"}}},"name":"brotli","time":{"created":"2014-09-29T04:12:37.886Z","modified":"2025-10-13T17:09:52.089Z","1.0.0":"2014-09-29T04:12:37.886Z","1.0.1":"2015-02-03T16:58:56.932Z","1.0.2":"2015-02-07T21:05:29.134Z","1.1.0":"2015-04-02T20:14:27.002Z","1.2.0":"2016-03-27T23:20:48.276Z","1.3.0":"2016-09-11T07:37:13.957Z","1.3.1":"2016-09-14T03:34:39.357Z","1.3.2":"2017-05-02T07:29:49.109Z","1.3.3":"2022-06-08T06:10:36.405Z"},"readmeFilename":"readme.md","homepage":"https://github.com/devongovett/brotli.js"}