Code Quality Rank: L5
Monthly Downloads: 0
Programming language: JavaScript
License: MIT License
Tags: Streams     Stream     Readable     Wrapper     Convenience     Pull     From    
Latest version: v2.3.0

from2 alternatives and similar modules

Based on the "Streams" category.
Alternatively, view from2 alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of from2 or a related project?

Add another 'Streams' Module


from2 Flattr this!experimental

from2 is a high-level module for creating readable streams that properly handle backpressure.

Convience wrapper for readable-stream's ReadableStream base class, with an API lifted from from and through2.



stream = from2([opts], read)

Where opts are the options to pass on to the ReadableStream constructor, and read(size, next) is called when data is requested from the stream.

  • size is the recommended amount of data (in bytes) to retrieve.
  • next(err) should be called when you're ready to emit more data.

For example, here's a readable stream that emits the contents of a given string:

var from = require('from2')

function fromString(string) {
  return from(function(size, next) {
    // if there's no more content
    // left in the string, close the stream.
    if (string.length <= 0) return next(null, null)

    // Pull in a new chunk of text,
    // removing it from the string.
    var chunk = string.slice(0, size)
    string = string.slice(size)

    // Emit "chunk" from the stream.
    next(null, chunk)

// pipe "hello world" out
// to stdout.
fromString('hello world').pipe(process.stdout)

stream = from2.obj([opts], read)

Shorthand for from2({ objectMode: true }, read).

createStream = from2.ctor([opts], read)

If you're creating similar streams in quick succession you can improve performance by generating a stream constructor that you can reuse instead of creating one-off streams on each call.

Takes the same options as from2, instead returning a constructor which you can use to create new streams.

See Also

  • from2-array - Create a from2 stream based on an array of source values.
  • from2-string - Create a stream from a string. Sugary wrapper around from2.


MIT. See LICENSE.md for details.

*Note that all licence references and agreements mentioned in the from2 README section above are relevant to that project's source code only.