Combine multiple Node.js streams into a single duplex stream with automatic error handling and cleanup.
pumpify is a Node.js library that combines multiple streams into a single duplex stream using pump and duplexify. It solves the problem of managing complex stream pipelines by providing automatic error handling and cleanup, ensuring that if one stream fails, all streams in the pipeline are properly destroyed to prevent resource leaks.
Node.js developers working with stream-based data processing, such as file compression, transformation pipelines, or network protocols, who need reliable and maintainable stream composition.
Developers choose pumpify for its simplicity and robustness in handling stream errors, reducing boilerplate code for pipeline management and integrating seamlessly with the mississippi ecosystem of stream utilities.
Combine an array of streams into a single duplex stream using pump and duplexify
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses the pump library to destroy all streams if any closes or errors, preventing resource leaks as emphasized in the README's description.
Combines multiple streams into a single duplex stream that writes to the first and reads from the last, reducing complex piping logic for pipelines like gzipped tarball extraction.
Provides pumpify.obj() for handling object mode streams, ensuring compatibility with different stream types as shown in the README examples.
Allows defining pipelines dynamically with setPipeline(), useful for cases where streams are created after instantiation, per the README's asynchronous usage section.
Destroys all streams on any error, which can be too broad for applications requiring partial error recovery or custom error handling per stream.
Relies on external libraries like pump and duplexify, adding extra dependencies compared to using Node.js's native stream methods for simpler cases.
The README offers basic examples but lacks details on advanced configurations, performance tuning, or error handling customization beyond automatic destruction.