https://github.com/jamen/pull-minify-js
Minify JavaScript files or buffers inside a pull-stream
https://github.com/jamen/pull-minify-js
Last synced: 9 months ago
JSON representation
Minify JavaScript files or buffers inside a pull-stream
- Host: GitHub
- URL: https://github.com/jamen/pull-minify-js
- Owner: jamen
- License: mit
- Created: 2017-05-08T14:54:16.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-05-13T05:06:58.000Z (about 9 years ago)
- Last Synced: 2025-01-12T09:42:27.998Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 21.5 KB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# pull-minify-js
> Minify JavaScript files or buffers inside a pull-stream
Minifies [streamed JavaScript files](https://npmjs.com/pull-files) using [`uglify-js`](https://npmjs.com/uglify-js)
```js
const pull = require('pull-stream')
const { read, write } = require('pull-files')
const minify = require('pull-minify-js')
pull(
read([ 'index.js', 'test.js' ], { cwd: __dirname }),
minify({
mangle: true,
toplevel: true
}),
write(__dirname + '/out', err => {
// done
})
)
```
Use `minify.buffer` if you are streaming JavaScript buffers instead
```js
pull(
readFile(__dirname + '/foo.js'),
minify.buffer({ mangle: true, toplevel: true }),
writeFile(__dirname + '/out.js')
)
```
## Install
```sh
npm install --save pull-minify-js
```
```sh
yarn add pull-minify-js
```
## Usage
### `minify(options?)`
A stream that maps each JavaScript file to the minified version. See [`uglify-js`'s options](https://www.npmjs.com/package/uglify-js#usage) further configuration.
```js
pull(
read([ 'index.js', 'lib/**/*.js' ], { cwd: __dirname }),
bundle('app.js', [ 'es2040' ]),
uglify({ ...options }),
write(__dirname + '/out', err => {
// ...
})
)
```
You can make it map all files regardless of extensions, by passing `strict: false`
```js
minify({ strict: false, ... })
```
### `minify.buffer(options?)`
The base implementation that compiles buffer to buffer, instead of file to file. Options are the same
```js
pull(
readFile(__dirname + '/foo.js'),
minify.buffer({ ...options }),
writeFile(__dirname + '/foo.min.js')
)
```
---
Maintained by [Jamen Marz](https://git.io/jamen) (See on [Twitter](https://twitter.com/jamenmarz) and [GitHub](https://github.com/jamen) for questions & updates)