Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Promises
  3. pinkie

pinkie

MITJavaScript

A minimal ES2015 Promise implementation for Node.js, focusing on spec compliance over browser compatibility.

GitHubGitHub
138 stars17 forks0 contributors

What is pinkie?

Pinkie is a minimal ES2015 Promise implementation for Node.js that serves as an exact polyfill of the Promise specification. It focuses on providing spec-compliant Promise functionality without the bloat of browser compatibility layers, making it lightweight and efficient for server-side use.

Target Audience

Node.js developers who need a spec-compliant Promise polyfill without unnecessary browser compatibility features, particularly those building server-side applications or tools.

Value Proposition

Developers choose Pinkie for its minimalism and strict adherence to the ES2015 Promise spec, offering a lightweight alternative to larger Promise libraries that include extensive browser support code.

Overview

Itty bitty little widdle twinkie pinkie ES2015 Promise implementation

Use Cases

Best For

  • Adding Promise support to Node.js projects without native ES2015 support
  • Building lightweight Node.js tools or libraries that require Promises
  • Ensuring spec-compliant Promise behavior in server-side applications
  • Reducing dependency size by avoiding bloated Promise polyfills
  • Polyfilling Promises in environments where browser compatibility is not needed
  • Educational purposes to understand ES2015 Promise implementation

Not Ideal For

  • Browser-first applications without a bundler like Browserify
  • Projects requiring advanced Promise features like cancellation or progress tracking
  • Modern Node.js environments with native Promise support already available

Pros & Cons

Pros

Minimal Footprint

Pinkie avoids unnecessary browser compatibility code, keeping the implementation small and efficient for server-side use, as emphasized in the README.

ES2015 Spec Compliance

It provides an exact polyfill of the Promise specification, ensuring reliable and standard behavior in Node.js environments.

Node.js Optimization

Includes polyfills for Node.js rejection events, making it tailored for server-side applications and enhancing error handling.

Browserify Support

Can be bundled for browser use via Browserify, offering flexibility for projects that need cross-platform compatibility.

Cons

No Direct Browser Support

Lacks built-in compatibility for browsers, requiring additional tooling like Browserify, which adds complexity for web-focused projects.

Limited Feature Set

Strictly adheres to the ES2015 spec, missing advanced features like cancellation or utility methods found in libraries like Bluebird.

Redundant with Native Promises

In modern Node.js versions that support native Promises, Pinkie adds unnecessary dependency overhead without significant benefits.

Frequently Asked Questions

Quick Stats

Stars138
Forks17
Contributors0
Open Issues2
Last commit8 years ago
CreatedSince 2015

Tags

#server-side#minimalist#async-programming#spec-compliance#es2015#node-js#promise-polyfill

Built With

N
Node.js

Included in

Promises1.7k
Auto-fetched 6 hours ago

Related Projects

es6-promisees6-promise

A polyfill for ES6-style Promises

Stars7,258
Forks584
Last commit3 years ago
lielie

A basic but performant promise implementation.

Stars743
Forks61
Last commit6 years ago
native-promise-onlynative-promise-only

A polyfill for native ES6 Promises as close as possible (no extensions) to the strict spec definitions.

Stars715
Forks68
Last commit6 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub