Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/myrotvorets/buffer-stream

Converts a Buffer into a Readable Stream
https://github.com/myrotvorets/buffer-stream

buffer-stream buffer-to-stream stream-buffer stream-to-buffer

Last synced: 23 days ago
JSON representation

Converts a Buffer into a Readable Stream

Awesome Lists containing this project

README

        

# buffer-stream

[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=myrotvorets_buffer-stream&metric=alert_status)](https://sonarcloud.io/dashboard?id=myrotvorets_buffer-stream)
[![Build and Test](https://github.com/myrotvorets/buffer-stream/actions/workflows/build.yml/badge.svg)](https://github.com/myrotvorets/buffer-stream/actions/workflows/build.yml)

Converts a Buffer into a Readable Stream.

Since version 1.1.0, it provides a helper to read the entire stream into a Buffer.

Since version 1.3.0, it provides a writable stream that stores the result in a buffer.

## Usage

```js
import { BufferStream, WritableBufferStream, streamToBuffer } from '@myrotvorets/buffer-stream';

// BufferStream
const buf = Buffer.from('123');
const stream = new BufferStream(buf);

// streamToBuffer
streamToBuffer(stream).then((buffer) => { /* ... */ })

// WritableBufferStream
const stream = new WritableBufferStream();
stream.write('something', (err) => {
if (!err) {
console.log(stream.toString());

stream.clear(); // Clear the internal buffer
}
});

await stream.writeP('something else');
```

See the [`test`](test) directory for usage examples.