Skip to content
This repository has been archived by the owner on Jun 23, 2022. It is now read-only.
/ node-stream Public archive

Utilities for working with node streams.

License

Notifications You must be signed in to change notification settings

stezu/node-stream

Repository files navigation

Node-Stream

npm version Build Status Test Coverage

A Stream is a core interface in Node which is generally misunderstood. Since Node doesn't provide a simple API for them, they are very often misused. This library aims to resolve those problems by exposing a collection of array-like methods for working with Node Streams.

Every function in Node-Stream returns an instance of a Streams3 Stream which means you'll be using the latest implementation of Streams. This library works with the latest Streams as well as Node 0.12 Streams.

const nodeStream = require('node-stream');

// Get the 5 most recent posts by stezu
db.createReadStream()
    .pipe(nodeStream.where({ type: 'post', author: 'stezu' }))
    .pipe(nodeStream.sort((a, b) => a.id > b.id))
    .pipe(nodeStream.take(5))
    .pipe(nodeStream.stringify())
    .pipe(nodeStream.intersperse('\n'))
    .pipe(process.stdout);

Install

You can install using npm:

npm install --save node-stream

You can then require() node-stream:

const nodeStream = require('node-stream');

Documentation

Documentation can be found at http://stezu.github.io/node-stream/.