p-waterfall - Run promise-returning & async functions in series, each passing its result to the next

  •        5

Returns a Promise that is fulfilled when all promises returned from calling the functions in tasks are fulfilled, or rejects if any of the promises reject. The fulfilled value is the value returned from the last task.Functions are expected to return a value. If a Promise is returned, it's awaited before continuing with the next task.

https://github.com/sindresorhus/p-waterfall

Tags
Implementation
License
Platform

   




Related Projects

p-progress - Create a promise that reports progress


Useful for reporting progress to the user during long-running async operations.Same as the Promise constructor, but with an appended progress parameter in executor.

AwaitKit - The ES8 Async/Await control flow for Swift


AwaitKit is a powerful Swift library inspired by the Async/Await specification in ES8 (ECMAScript 2017) which provides a powerful way to write asynchronous code in a sequential manner. Internally it uses PromiseKit to create and manage promises.



IxJS - The Interactive Extensions for JavaScript


The Interactive Extensions for JavaScript (IxJS) brings the Array#extras combinators to iterables, generators, async iterables and async generators. With the introduction of the Symbol.iterator and generators in ES2015, and subsequent introduction of Symbol.asyncIterator and async generators, it became obvious we need an abstraction over these data structures for composition, querying and more.IxJS unifies both synchronous and asynchronous pull-based collections, just as RxJS unified the world of push-based collections. RxJS is great for event-based workflows where the data can be pushed at the rate of the producer, however, IxJS is great at I/O operations where you as the consumer can pull the data when you are ready.

promise-fun - Promise packages, patterns, chat, and tutorials


I intend to use this space to document my promise modules, useful promise patterns, and how to solve common problems. For now though, you can see all my promise modules below.Star this repo to show your interest, so I can know whether to prioritize this work.

kneden - Transpile ES2017 async/await to vanilla ES6 Promise chains: a Babel plugin


This project is currently unmaintained. If you want to take over, feel free to fork the repo. If such a fork gets maintained or contains useful improvements, I'd be willing to merge back and give repo+npm access.WARNING: Kneden is usable, but it's also not complete yet.

co - The ultimate generator based flow-control goodness for nodejs (supports thunks, promises, etc)


Generator based control flow goodness for nodejs and the browser, using promises, letting you write non-blocking code in a nice-ish way.co@4.0.0 has been released, which now relies on promises. It is a stepping stone towards the async/await proposal. The primary API change is how co() is invoked. Before, co returned a "thunk", which you then called with a callback and optional arguments. Now, co() returns a promise.

chillout - Reduce CPU usage in JavaScript


Reduce JavaScript CPU usage by asynchronous iteration. Provides asynchronous iteration functions that have a Promise based interface and it can execute with low CPU usage. Each iteration adds delay if the processing is heavy to maintain the CPU stability. Iterate without delay if processing is fast. Therefore, it will realize friendly processing for your machine. It can execute JavaScript without "Warning: Unresponsive Script" alert in the browser.

Apache Commons - Alternative to Java collection


Commons-Collections seek to build upon the JDK classes by providing new interfaces, implementations and utilities. It provides collection class like Identity map, Ordered map, Reference map, Composite collections, Bag interface etc.

request-promise - The simplified HTTP request client 'request' with Promise support


The simplified HTTP request client 'request' with Promise support. Powered by Bluebird.Request and Bluebird are pretty awesome, but I found myself using the same design pattern. Request-Promise adds a Bluebird-powered .then(...) method to Request call objects. By default, http response codes other than 2xx will cause the promise to be rejected. This can be overwritten by setting options.simple = false.

listr - Terminal task list


A task can return different values. If a task returns, it means the task was completed successfully. If a task throws an error, the task failed.A task can also be async by returning a Promise. If the promise resolves, the task completed successfully, if it rejects, the task failed.

node-sqlite - SQLite client library for Node


A wrapper library that adds ES6 promises and SQL-based migrations API to sqlite3 (docs).🔥 Want to strengthen your core JavaScript skills and master ES6? I would personally recommend this awesome ES6 course by Wes Bos.