Skip to content
JS
Package category

Promises and async control flow

Concurrency limits, retries, timeouts, debounce and async helpers.

735 packages3 comparisons

Packages compared

735 packages
PackageWeekly downloads12-month change52 weeksGzipLast releaseModuleTypesCategories
koa-convert
convert modern Koa legacy generator-based middleware to promise-based middleware
2.6m-3%-6 years ago
2.0.0
CommonJSNoneHTTP 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
CommonJSNonePromises and async control flow
is-observable
Check if a value is an Observable
2.5m+25%-4 years ago
3.0.0
ESM onlyBundledPromises 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 onlyBundledPromises and async control flow
async-hook-jl
Inspect the life of handle objects in node
2.3m+9%-9 years ago
1.7.6
CommonJSNonePromises 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 + CommonJSBundledPromises 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 onlyNonePromises 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
CommonJSNonePromises and async control flow
retry-as-promised
Retry a failed promise
2m+13%-1 year ago
7.1.1
CommonJSBundledPromises and async control flow
any-observable
Support any Observable library and polyfill
1.9m+15%-7 months ago
0.6.0
ESM onlyNonePromises 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 onlyBundledPromises 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 onlyNoneTesting, 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 + CommonJSBundledPromises 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 onlyBundledFiles 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
CommonJSBundledPromises and async control flow
debounce-promise
Create a debounced version of a promise returning function
1.1m+64%-7 years ago
3.1.2
CommonJSNonePromises 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 onlyBundledPromises and async control flow
await-lock
Mutex locks for async functions
1.1m+370%-1 year ago
3.0.0
ESM onlyBundledPromises and async control flow
traverse-chain
A simple asynchronous tool
1.1m+3%-13 years ago
0.1.0
CommonJSNonePromises 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 onlyBundledPromises 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
CommonJSBundledPromises 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 + CommonJSBundledTypeScript 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
CommonJSNonePromises and async control flow
promise.series
Run Promise in series.
986.4k+9%-9 years ago
0.2.0
-NonePromises and async control flow
asynciterator.prototype
`AsyncIterator.prototype`, or a shared object to use.
968k-44%-3 years ago
1.0.0
CommonJSNonePromises and async control flow
combine-promises
[![NPM](https://img.shields.io/npm/dm/combine-promises.svg)](https://www.npmjs.com/package/combine-promises) [![CI](https://github.com/slorber/combine-promises/actions/workflows/main.yml/badge.svg)](https://github.com/slorber/combine-promises/actions/work
964k+141%-3 years ago
1.2.0
ESM + CommonJSBundledPromises and async control flow
p-memoize
Memoize promise-returning & async functions
936.2k+13%-1 year ago
8.0.0
ESM onlyBundledCaching, 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 onlyBundledPromises and async control flow
p-any
Wait for any promise to be fulfilled
925.6k+45%-5 years ago
4.0.0
ESM onlyNonePromises and async control flow
@redux-saga/delay-p
Promisified setTimeout
925.2k---11 months ago
1.3.1
ESM + CommonJSBundledPromises 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 + CommonJSBundledPromises 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
CommonJSNoneHTTP 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 + CommonJSBundledPromises 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 + CommonJSBundledPromises and async control flow
opossum
A fail-fast circuit breaker for promises and callbacks
845k+192%-3 months ago
10.0.0
-NonePromises 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[![NPM](https://img.shields.io/npm/dm/combine-promises.svg)](https://www.npmjs.com/package/combine-promises) [![CI](https://github.com/slorber/combine-promises/actions/workflows/main.yml/badge.svg)](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