28 open-source projects similar to creationix/step, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Step alternative.
Composable Concurrency Abstractions for JavaScript. :railwaytrack: :rhinoceros: :train: :verticaltraffic_light:
q is a JavaScript promise library and asynchronous flow controller designed to manage non-blocking operations. It serves as a system for coordinating parallel tasks and sequencing asynchronous workflows through task chaining and error propagation. The library distinguishes itself with specialized debugging tools that capture long stack traces across asynchronous jumps and monitor unhandled rejections to prevent silent failures. It also functions as a remote object proxy, forwarding method calls to remote targets and routing responses back through promises. The project provides comprehensive
Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous tasks in Node.js and the browser. It provides functional utilities to wrap, process, and orchestrate complex asynchronous workflows. The library distinguishes itself through a comprehensive task orchestrator that handles dependency graphs to resolve circular references and manages concurrent task queues. It includes a unification bridge that allows callback-style and promise-based functions to operate within the same execution interface. The project covers several primary capabil
A same behaviour EventTarget prototype, that can work with any object from JavaScript
Bluebird is a JavaScript promise library designed for managing asynchronous operations with a custom promise implementation. It provides a framework for controlling promise lifecycles and orchestrating non-blocking programming patterns. The library distinguishes itself with an asynchronous debugging toolkit that captures long stack traces across asynchronous boundaries and a global handler for unhandled promise rejections. It includes a predicate-based error filtering system to target specific exception types and a mechanism for the deterministic cleanup of system resources. It covers a broa
:surfer: Asynchronous flow control with a functional taste to it
A solid, fast Promises/A+ and when() implementation, plus other async goodies.
Transform stream that lets you peek the first line before deciding how to parse it
Combine an array of streams into a single duplex stream using pump and duplexify
a fast newline (or any delimiter) splitter stream - like require('split') but specific for binary data
Memoize promise-returning functions. Includes cache expire and prefetch.
Node-core streams for userland
RxJS is a library for reactive programming that provides a framework for composing asynchronous and event-based programs. It utilizes observable sequences to model data flows, allowing developers to manage complex sequences of events through a declarative programming interface. The library implements the observer pattern to facilitate decoupled communication between data producers and subscribers. By employing a lazy execution model, streams remain dormant until a consumer explicitly subscribes, at which point data production is triggered. This approach enables the construction of predictable
Delay a promise a specified amount of time
Transform the first chunk in a stream
Get a stream as a string, Buffer, ArrayBuffer or array
Convert a string/promise/array/iterable/asynciterable/buffer/typedarray/arraybuffer/object into a stream
Convert an Observable to a Promise
Map over promises concurrently
Simple Node.JS stream (streams2) Transform that runs the transform functions concurrently (with a set max concurrency)
Promisify a callback-style function
High-level streams library for Node.js and the browser
A stream that emits multiple other streams one after another (streams3)
Convenience wrapper for ReadableStream, with an API lifted from "from" and "through2"
Line-by-line Stream reader for node.js
Limit the execution rate of a function
Turn a writable and readable stream into a streams2 duplex stream with support for async initialization and streams1/streams2 input