Skip to content

Latest commit

 

History

History
220 lines (209 loc) · 9.68 KB

implementations.md

File metadata and controls

220 lines (209 loc) · 9.68 KB

Conformant Implementations

There are many conformant implementations of Promises/A+. Here are the ones we know about. Note that an implementation's conformance is determined by it passing the test suite. If you pass the tests, feel free to send a pull request to get yourself on this list!

Conformant implementations are encouraged to include the Promises/A+ logo in their README files with a link to the specification, using code like the following:

<a href="http://promisesaplus.com/">
    <img src="http://promisesaplus.com/assets/logo-small.png" alt="Promises/A+ logo"
         title="Promises/A+ 1.0 compliant" align="right" />
</a>

Also, if your implementation is published in the npm registry, we suggest using the "promises-aplus" keyword.

Standalone

Implementation Description
avow Example Promises/A+ implementation. Simple, tiny, fast, fully async
bluebird Full featured Promises/A+ implementation with exceptionally good performance
CodeCatalyst/promise.coffee Promises/A+ compliant implementation in object-oriented CoffeeScript
Covenant A tight and performant Promises/A+ compliant implementation in CoffeeScript
D.js A tiny Promises/A+ implementation for Node.js and the browser with some extras
fate Promises/A+ closure-based implementation
ff Simplifies the most common use cases for series, parallel, and promise utilities
FidPromise Promise implementation that is readable and debuggable
microPromise Written for a nodejs + browser ArangoDB driver.
legendary Dabbling with promises. It’ll be legendary
Local.js Promises Monadic function chaining around asynchronously-fulfilled values. [Part of the Local project]
mpromise A Promises/A+ conformant implementation, written for mongoose
Naive Promesse Naïve implementation of Promises/A+ specification
ondras/promise Straightforward client-side Promises/A+ implementation, with XHR, setTimeout etc.
potch/promise.js Fully Promises/A+ compliant promises and nothing else!
P A simple Promises/A+ library, implementing a subset of the the Q API
Pacta An algebraic, Promises/A+ compliant implementation of Promises in node.js.
Pinky An extremely tiny Promises/A+ implementation that passes the Promises/A+ test suite
PinkySwear.js Promises/A+ compliant in less than 400 bytes
Promises, Promises... A full, documented, standalone Promises/A+ 1.1 implementation for TypeScript / JavaScript / Node.js with some additional features to improve productivity
promeso A little Promises/A+ implementation
promiscuous A minimal and fast promise/deferred implementation
Promix Mix promises with callbacks for improved control flow
Q A tool for making and composing asynchronous promises in JavaScript
rsvp.js A lightweight library that provides tools for organizing asynchronous code
Shvua A promise implementation that also allows you to wrap your object's API with promise-like API
Ten.Promise Promises/A+ implementation written in TypeScript
then/promise Bare bones Promises/A+ implementation
vow Promises/A+ implementation
when cujoJS's promise implementation and async toolkit
yapa Yet another Promises/A+ implementation

Inside Frameworks

Implementation Description
Core A fine foundation for JavaScript projects
nbd.js Promises as an inheritable trait from nbd.js
Orion Deferred From the Orion library
promesse Emily's Promise/A+
YUI YUI is a free, open source JavaScript library for building richly interactive web applications

In Other Languages

We've been excited to discover that the popularity of Promises/A+ has led to a number of implementations in other languages besides JavaScript. Although these don't necessarily match the exact semantics of the spec due to differing language capabilities, and we can't verify them against our JavaScript test suite directly, it's still very exciting to have such a strong community and we want to showcase these efforts.

Language Implementation Description
ActionScript CodeCatalyst/promise-as3 Promises/A+ compliant implementation in ActionScript 3.0
Python xogeny/aplus An implementation of the Promises/A+ specification and test suite in Python
Objective-C RXPromise An Objective-C Class which implements the Promises/A+ specification.
Objective-C SHXPromise A lightweight implementation of Promises/A+ for iOS and OS X.