Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dominictarr/stream-combiner
https://github.com/dominictarr/stream-combiner
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/dominictarr/stream-combiner
- Owner: dominictarr
- License: mit
- Created: 2012-11-27T07:25:12.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2021-08-05T10:15:46.000Z (over 3 years ago)
- Last Synced: 2024-08-02T06:21:55.430Z (4 months ago)
- Language: JavaScript
- Size: 236 KB
- Stars: 102
- Watchers: 5
- Forks: 30
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nodejs - stream-combiner - Turn a pipeline into a single stream. Combine returns a stream that writes to the first stream and reads from the last stream. (Repository / Streams)
- awesome-nodejs-streams - dominictarr/stream-combiner - Turn a pipeline into a single stream. Combine returns a stream that writes to the first stream and reads from the last stream (Modules)
README
# stream-combiner
[![npm version](https://img.shields.io/npm/v/stream-combiner.svg)](https://npmjs.org/package/stream-combiner)
[![Travis CI](https://travis-ci.org/dominictarr/stream-combiner.svg)](https://travis-ci.org/dominictarr/stream-combiner)## Combine (stream1,...,streamN)
Turn a pipeline into a single stream. `Combine` returns a stream that writes to the first stream
and reads from the last stream.Listening for 'error' will recieve errors from all streams inside the pipe.
```js
var Combine = require('stream-combiner')
var es = require('event-stream')Combine( // connect streams together with `pipe`
process.openStdin(), // open stdin
es.split(), // split stream to break on newlines
es.map(function (data, callback) { // turn this async function into a stream
var repr = util.inspect(JSON.parse(data)) // render it nicely
callback(null, repr)
}),
process.stdout // pipe it to stdout !
)
```Can also be called with an array:
```js
var combinedStream = Combine([
stream1,
stream2,
]);
```Or to combine gulp plugins:
```js
function coffeePipe() {
return Combine(
coffeescript(),
coffeelint.reporter('fail').on('error', function(){
gutil.beep()
gulp.run('lint')
})
}//usage:
gulp.src().pipe(coffeePipe());
```## License
MIT