Your first time on this page? Allow me to give some explanations.
A curated list of awesome ponyfills for writing cross-platform and cross-browser code.
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you Richienb & contributors
View Topic on GitHub:
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
A polyfill for ES6-style Promises
Map collection as specified in ECMAScript6
WeakMap collection as specified in ECMAScript6
Set collection as specified in ECMAScript 6
ECMAScript 6 Symbol polyfill
Regular expressions with named capture groups and named back-references
ECMAScript spec-compliant polyfill/shim for
ES2015 Number.isNaN() ponyfill
ES2015 Number.isFinite() ponyfill
ES2015 (ES6) Number.isInteger polyfill
ES5 spec-compliant shim for String.prototype.trim
ES2019 spec-compliant shim for String.prototype.trimLeft.
ES2019 spec-compliant shim for String.prototype.trimRight.
Spec-compliant polyfill for String.prototype.replaceAll ESnext proposal.
Official ES proposal-compliant polyfill for Object.fromEntries
ES2017 spec-compliant shim for Object.entries
ES2017 spec-compliant shim for Object.values
ES2015 Object.assign() ponyfill
ES6-compliant shim for Object.is - differentiates between -0 and +0, and can compare to NaN.
A JSON polyfill. No longer maintained.
A ponyfill for the ES 2015
Array.prototype.every spec-compliant polyfill
Simple ES6 Array.prototype.find polyfill for older environments.
Array.prototype.some spec-compliant polyfill
An ESnext spec-compliant
Array.prototype.flatMap shim/polyfill/replacement that works as far down as ES3.
.map(f) for old browsers
Array#forEach ponyfill for older browsers
Array.prototype.includes spec-compliant polyfill
Array#isArray for older browsers.
Universal WHATWG Fetch API for Node, Browsers and React Native.
Cross-platform Blob implementation for Node.js and the Web.
Cross-platform FormData support.
Polyfill for the AbortController DOM API and abortable fetch (stub that calls catch, doesn't actually abort request).
🔎 Polyfill for the PerformanceObserver API
Implements performance.now (based on process.hrtime).
Adds console.table method that prints an array of objects as a table in console
Node.js implementation of the Web Bluetooth Specification
A polyfill for the Resize Observer API
Web Cryptography API shim for legacy browsers
Client-side support for CSS custom properties (aka "CSS variables") in legacy and modern browsers
requestAnimationFrame polyfill library
XMLHttpRequest emulator for node.js
Node's event emitter for all engines.
Tiny library (<200B gzip) for deferring something by a "tick"
A ponyfill for Buffer.from
Gracefully terminate a script in Node.js or browsers.
Environment agnostic nextTick polyfill