Package category
Promises and async control flow
Concurrency limits, retries, timeouts, debounce and async helpers.
735 packages3 comparisons
Packages compared
735 packages
| Package | Weekly downloads | 12-month change | 52 weeks | Gzip | Last release | Module | Types | Categories |
|---|---|---|---|---|---|---|---|---|
| koa-convert convert modern Koa legacy generator-based middleware to promise-based middleware | 2.6m | -3% | - | 6 years ago 2.0.0 | CommonJS | None | HTTP servers and web frameworks, Promises and async control flow | |
| a-sync-waterfall Runs a list of async tasks, passing the results of each into the next one | 2.5m | +147% | - | 8 years ago 1.0.1 | CommonJS | None | Promises and async control flow | |
| is-observable Check if a value is an Observable | 2.5m | +25% | - | 4 years ago 3.0.0 | ESM only | Bundled | Promises and async control flow | |
| promise-breaker Library to help write libraries that accept both promises and callbacks. | 2.4m | +137% | - | 3 months ago 7.0.0 | ESM only | Bundled | Promises and async control flow | |
| async-hook-jl Inspect the life of handle objects in node | 2.3m | +9% | - | 9 years ago 1.7.6 | CommonJS | None | Promises and async control flow, Node.js utilities | |
| plimit-lit This package is a helper to run multiple promise-returning & async functions with limited concurrency. | 2.2m | +108% | - | 2 months ago 3.4.0 | ESM + CommonJS | Bundled | Promises and async control flow | |
| p-pipe Compose promise-returning & async functions into a reusable pipeline | 2.1m | -2% | - | 5 years ago 4.0.0 | ESM only | None | Promises and async control flow | |
| now-and-later Map over an array or object of values in parallel or series, passing each through the async iterator, with optional lifecycle hooks. | 2m | -1% | - | 4 years ago 3.0.0 | CommonJS | None | Promises and async control flow | |
| retry-as-promised Retry a failed promise | 2m | +13% | - | 1 year ago 7.1.1 | CommonJS | Bundled | Promises and async control flow | |
| any-observable Support any Observable library and polyfill | 1.9m | +15% | - | 7 months ago 0.6.0 | ESM only | None | Promises and async control flow, Polyfills and shims | |
| p-wait-for Wait for a condition to be true | 1.8m | +37% | - | 1 year ago 6.0.0 | ESM only | Bundled | Promises and async control flow | |
| p-map-series Map over promises serially | 1.7m | -10% | - | 5 years ago 3.0.0 | - | - | Promises and async control flow | |
| await-to-js Async/await wrapper for easy error handling in js | 1.7m | +138% | - | 5 years ago 3.0.0 | - | - | Promises and async control flow | |
| asyncbox A collection of small async/await utilities | 1.7m | +239% | - | 24 days ago 6.4.3 | - | - | Promises and async control flow | |
| isomorphic-timers-promises `timers/promises` for client and server. | 1.6m | +50% | - | 5 years ago 1.0.1 | - | - | Promises and async control flow | |
| exec-async Returns a promise with the results of a shell command | 1.5m | +6% | - | 11 years ago 2.2.0 | - | - | Promises and async control flow | |
| abort-controller-x Abortable async function helpers | 1.5m | +146% | - | 11 months ago 0.5.0 | - | - | Promises and async control flow | |
| async-validator validate form asynchronous | 1.5m | +27% | - | 4 years ago 4.2.5 | - | - | Promises and async control flow | |
| async-done Allows libraries to handle various caller provided asynchronous functions uniformly. Maps promises, observables, child processes and streams, and callbacks to callback style. | 1.5m | -8% | - | 4 years ago 2.0.0 | - | - | Promises and async control flow | |
| chai-as-promised Extends Chai with assertions about promises. | 1.5m | -9% | - | 1 year ago 8.0.2 | ESM only | None | Testing, Promises and async control flow | |
| p-waterfall Run promise-returning & async functions in series, each passing its result to the next | 1.4m | +5% | - | 5 years ago 3.0.0 | - | - | Promises and async control flow | |
| async-foreach An optionally-asynchronous forEach with an interesting interface. | 1.4m | -16% | - | 13 years ago 0.1.3 | - | - | Promises and async control flow | |
| when A lightweight Promises/A+ and when() implementation, plus other async goodies. | 1.4m | +13% | - | 9 years ago 3.7.8 | - | - | Promises and async control flow | |
| bach Compose your async functions with elegance. | 1.4m | -14% | - | 4 years ago 2.0.1 | - | - | Promises and async control flow | |
| extrareqp2 Promise based HTTP client for the browser and node.js | 1.3m | +26% | - | 2 years ago 1.0.0 | - | - | HTTP clients, Promises and async control flow | |
| @jpwilliams/waitgroup A tiny version of Golang's WaitGroup with typings, promises, and zero dependencies. | 1.3m | - | - | - | 2 years ago 2.1.1 | - | - | TypeScript tooling, Promises and async control flow |
| async-settle Settle an async function. | 1.3m | -9% | - | 4 years ago 2.0.0 | - | - | Promises and async control flow | |
| @vladfrangu/async_event_emitter An event emitter implementation with async support in mind | 1.2m | - | - | - | 11 months ago 2.4.7 | ESM + CommonJS | Bundled | Promises and async control flow, Node.js utilities |
| replace-in-file A simple utility to quickly replace text in one or more files. | 1.2m | -11% | - | 1 month ago 9.0.0 | ESM only | Bundled | Files and file systems, CLI tools and terminal utilities | |
| scrypt-js The scrypt password-based key derivation function with sync and cancellable async. | 1.1m | +8% | - | 6 years ago 3.0.1 | CommonJS | Bundled | Promises and async control flow | |
| debounce-promise Create a debounced version of a promise returning function | 1.1m | +64% | - | 7 years ago 3.1.2 | CommonJS | None | Promises and async control flow | |
| p-all Run promise-returning & async functions concurrently with optional limited concurrency | 1.1m | -2% | - | 1 year ago 5.0.1 | ESM only | Bundled | Promises and async control flow | |
| await-lock Mutex locks for async functions | 1.1m | +370% | - | 1 year ago 3.0.0 | ESM only | Bundled | Promises and async control flow | |
| traverse-chain A simple asynchronous tool | 1.1m | +3% | - | 13 years ago 0.1.0 | CommonJS | None | Promises and async control flow | |
| micro-ftch Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features | 1.1m | +36% | - | 27 days ago 1.2.1 | ESM only | Bundled | Promises and async control flow, HTTP clients | |
| @ioredis/as-callback A performant and standard (Bluebird) library that registers a node-style callback on a promise | 1.1m | - | - | - | 4 years ago 3.0.0 | CommonJS | Bundled | Promises and async control flow |
| @nevware21/ts-async support for asynchronous development with a Promise based task Scheduler, several different Promise implementations (synchronous, idle, asynchronous and native runtime wrappers), await helpers, and aliases all built and tested using TypeScript. | 1m | - | - | - | 3 months ago 0.6.1 | ESM + CommonJS | Bundled | TypeScript tooling, Promises and async control flow |
| foreachasync A node- and browser-ready async (now with promises) counterpart of Array.prototype.forEach | 1m | +23% | - | 7 years ago 5.1.3 | CommonJS | None | Promises and async control flow | |
| promise.series Run Promise in series. | 986.4k | +9% | - | 9 years ago 0.2.0 | - | None | Promises and async control flow | |
| asynciterator.prototype `AsyncIterator.prototype`, or a shared object to use. | 968k | -44% | - | 3 years ago 1.0.0 | CommonJS | None | Promises and async control flow | |
| combine-promises [](https://www.npmjs.com/package/combine-promises) [](https://github.com/slorber/combine-promises/actions/work | 964k | +141% | - | 3 years ago 1.2.0 | ESM + CommonJS | Bundled | Promises and async control flow | |
| p-memoize Memoize promise-returning & async functions | 936.2k | +13% | - | 1 year ago 8.0.0 | ESM only | Bundled | Caching, Promises and async control flow | |
| p-some Wait for a specified number of promises to be fulfilled | 929.5k | +45% | - | 1 year ago 7.0.0 | ESM only | Bundled | Promises and async control flow | |
| p-any Wait for any promise to be fulfilled | 925.6k | +45% | - | 5 years ago 4.0.0 | ESM only | None | Promises and async control flow | |
| @redux-saga/delay-p Promisified setTimeout | 925.2k | - | - | - | 11 months ago 1.3.1 | ESM + CommonJS | Bundled | Promises and async control flow, State management |
| @redux-saga/deferred Helper for creating "exposed" promise object (with resolve & reject methods). | 916.2k | - | - | - | 11 months ago 1.3.1 | ESM + CommonJS | Bundled | Promises and async control flow, State management |
| request-promise The simplified HTTP request client 'request' with Promise support. Powered by Bluebird. | 883.6k | -25% | - | 6 years ago 4.2.6 | CommonJS | None | HTTP clients, Promises and async control flow | |
| @lifeomic/attempt Library that can be used to retry functions that return promise | 866.3k | - | - | - | 2 years ago 3.1.0 | ESM + CommonJS | Bundled | Promises and async control flow, TypeScript tooling |
| set-interval-async Modern version of setInterval for promises and async functions available in Node.js and browsers. | 861.3k | +137% | - | 3 years ago 3.0.3 | ESM + CommonJS | Bundled | Promises and async control flow | |
| opossum A fail-fast circuit breaker for promises and callbacks | 845k | +192% | - | 3 months ago 10.0.0 | - | None | Promises and async control flow |
12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.
- koa-convertconvert modern Koa legacy generator-based middleware to promise-based middleware
- a-sync-waterfallRuns a list of async tasks, passing the results of each into the next one
- is-observableCheck if a value is an Observable
- promise-breakerLibrary to help write libraries that accept both promises and callbacks.
- async-hook-jlInspect the life of handle objects in node
- plimit-litThis package is a helper to run multiple promise-returning & async functions with limited concurrency.
- p-pipeCompose promise-returning & async functions into a reusable pipeline
- now-and-laterMap over an array or object of values in parallel or series, passing each through the async iterator, with optional lifecycle hooks.
- retry-as-promisedRetry a failed promise
- any-observableSupport any Observable library and polyfill
- p-wait-forWait for a condition to be true
- p-map-seriesMap over promises serially
- await-to-jsAsync/await wrapper for easy error handling in js
- asyncboxA collection of small async/await utilities
- isomorphic-timers-promises`timers/promises` for client and server.
- exec-asyncReturns a promise with the results of a shell command
- abort-controller-xAbortable async function helpers
- async-validatorvalidate form asynchronous
- async-doneAllows libraries to handle various caller provided asynchronous functions uniformly. Maps promises, observables, child processes and streams, and callbacks to callback style.
- chai-as-promisedExtends Chai with assertions about promises.
- p-waterfallRun promise-returning & async functions in series, each passing its result to the next
- async-foreachAn optionally-asynchronous forEach with an interesting interface.
- whenA lightweight Promises/A+ and when() implementation, plus other async goodies.
- bachCompose your async functions with elegance.
- extrareqp2Promise based HTTP client for the browser and node.js
- @jpwilliams/waitgroupA tiny version of Golang's WaitGroup with typings, promises, and zero dependencies.
- async-settleSettle an async function.
- @vladfrangu/async_event_emitterAn event emitter implementation with async support in mind
- replace-in-fileA simple utility to quickly replace text in one or more files.
- scrypt-jsThe scrypt password-based key derivation function with sync and cancellable async.
- debounce-promiseCreate a debounced version of a promise returning function
- p-allRun promise-returning & async functions concurrently with optional limited concurrency
- await-lockMutex locks for async functions
- traverse-chainA simple asynchronous tool
- micro-ftchWrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features
- @ioredis/as-callbackA performant and standard (Bluebird) library that registers a node-style callback on a promise
- @nevware21/ts-asyncsupport for asynchronous development with a Promise based task Scheduler, several different Promise implementations (synchronous, idle, asynchronous and native runtime wrappers), await helpers, and aliases all built and tested using TypeScript.
- foreachasyncA node- and browser-ready async (now with promises) counterpart of Array.prototype.forEach
- promise.seriesRun Promise in series.
- asynciterator.prototype`AsyncIterator.prototype`, or a shared object to use.
- combine-promises[](https://www.npmjs.com/package/combine-promises) [](https://github.com/slorber/combine-promises/actions/work
- p-memoizeMemoize promise-returning & async functions
- p-someWait for a specified number of promises to be fulfilled
- p-anyWait for any promise to be fulfilled
- @redux-saga/delay-pPromisified setTimeout
- @redux-saga/deferredHelper for creating "exposed" promise object (with resolve & reject methods).
- request-promiseThe simplified HTTP request client 'request' with Promise support. Powered by Bluebird.
- @lifeomic/attemptLibrary that can be used to retry functions that return promise
- set-interval-asyncModern version of setInterval for promises and async functions available in Node.js and browsers.
- opossumA fail-fast circuit breaker for promises and callbacks