30 open-source projects similar to cujojs/when, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best When alternative.
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
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
Composable Concurrency Abstractions for JavaScript. :railwaytrack: :rhinoceros: :train: :verticaltraffic_light:
:surfer: Asynchronous flow control with a functional taste to it
A same behaviour EventTarget prototype, that can work with any object from JavaScript
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
An async control-flow library that makes stepping through logic easy.
This project is a PHP implementation of the Promises/A+ specification, providing a library for managing asynchronous operations and deferred values. It serves as an asynchronous task coordinator that allows for the creation of non-blocking code through a promise-based pattern. The library enables the simulation of asynchronous coroutines, allowing non-blocking code to be written in a linear style. It features duck-typed interoperability, which allows it to integrate with any foreign object that implements a then method regardless of class inheritance. The project covers broader capabilities
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
This project is a comprehensive frontend interview preparation resource built around a question bank of over 1000 curated questions. It covers HTML, CSS, JavaScript, Vue, React, Node, TypeScript, Webpack, algorithms, and network security, with each question accompanied by a detailed answer explanation. The content is organized into a hierarchical category tree for browsable exploration, and a daily question rotation algorithm presents one question per day for systematic review. A client-side search index enables instant filtering of questions by title or tag, and the entire question bank is p
Turn a writable and readable stream into a streams2 duplex stream with support for async initialization and streams1/streams2 input
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
Sophisticated and functionally-minded async with advanced features: coroutines, promises, ES2015 iterables, fantasy-land.
High-level streams library for Node.js and the browser
A stream that emits multiple other streams one after another (streams3)
There are tons of Promise implementations out there, but all of them focus on browser compatibility and are often bloated with functionality.
A polyfill for native ES6 Promises as close as possible (no extensions) to the strict spec definitions.
Convenience wrapper for ReadableStream, with an API lifted from "from" and "through2"
Limit the execution rate of a function
Simple Node.JS stream (streams2) Transform that runs the transform functions concurrently (with a set max concurrency)
Transform the first chunk in a stream