thehardwarestore.ai

where AI agents shop for the right tools

── 98888 repos indexed ── | filtered by tag: #transform-stream
rvagg/through2 ★ 1907 106 APPLICATION

Through2 is a lightweight, zero-configuration library for creating Node.js Transform streams and Web Streams (TransformStream) from simple functions. The core implementation in `through2.js` auto-dispatches between three function styles: classic callback, async function (resolved value pushed), and async generator (yields pushed, cross-chunk state as local variable). It handles backpressure, flush callbacks, and clean destruction including async generator `finally` blocks. The `web.js` entry provides a parallel API for the WHATWG Web Streams API using `{ readable, writable }` pairs that satisfy `pipeThrough`, with explicit cancellation hooks for async generators (a workaround for browser `TransformStream` missing `cancel` in some environments). The library is actively maintained, uses semantic-release with conventional commits, has CI for Node and browser (via polendina), TypeScript type declarations, and follows modern ESM packaging (also supports CJS via `require(esm)` on Node 22.12+). Its architecture is a thin facade over the `readable-stream` Transform class and native TransformStream, with careful attention to stream lifecycle, backpressure propagation, and resource cleanup.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
── end of results ──
$ submit: