Package category
Polyfills and shims
Backfill missing language and platform features.
622 packages2 comparisons
Packages compared
622 packages
| Package | Weekly downloads | 12-month change | 52 weeks | Gzip | Last release | Module | Types | Categories |
|---|---|---|---|---|---|---|---|---|
| @ant-design/create-react-context A fork of create-react-context in MIT license | 64.6k | - | - | - | 4 years ago 0.2.6 | CommonJS | Bundled | Polyfills and shims, React |
| string.prototype.startswith A robust & optimized `String.prototype.startsWith` polyfill, based on the ECMAScript 6 specification. | 64.1k | +37% | - | 1 year ago 1.0.1 | CommonJS | None | Polyfills and shims | |
| element-closest-polyfill A minimal polyfill for Element.closest | 62.5k | +75% | - | 2 years ago 1.0.7 | CommonJS | None | Polyfills and shims | |
| @cto.af/textdecoder Quick wrapper that finds TextDecoder in your runtime, or uses an adequate polyfill | 61.3k | - | - | - | 6 months ago 0.3.0 | CommonJS | Bundled | Polyfills and shims |
| navigator.sendbeacon Polyfill for navigator.sendBeacon() | 61.1k | +9% | - | 6 years ago 0.0.20 | ESM + CommonJS | None | Polyfills and shims | |
| document-register-element A stand-alone working lightweight version of the W3C Custom Elements specification | 59.6k | -17% | - | - 1.14.10 | ESM + CommonJS | None | Polyfills and shims | |
| @stdlib/math-base-special-acos Compute the arccosine of a double-precision floating-point number. | 58.2k | - | - | - | 7 months ago 0.2.4 | CommonJS | Bundled | Numbers and maths, Polyfills and shims |
| array.prototype.foreach An ES spec-compliant `Array.prototype.forEach` shim/polyfill/replacement that works as far down as ES3. | 56.4k | -30% | - | 2 years ago 1.0.7 | CommonJS | None | Polyfills and shims | |
| ember-destroyable-polyfill Polyfill for RFC 580: Destroyables | 55.6k | +9% | - | 5 years ago 2.0.3 | CommonJS | None | Polyfills and shims | |
| proxy-polyfill Polyfill for the Proxy object | 54.3k | -27% | - | 6 years ago 0.3.2 | ESM + CommonJS | None | Polyfills and shims | |
| es6-promise-polyfill Polyfill for ES6 Promise | 53.3k | +28% | - | 10 years ago 1.2.0 | CommonJS | None | Polyfills and shims, Promises and async control flow | |
| fs-remove-compat Cross-platform file removal utilities with Node.js 0.8+ compatibility. Provides rm and rmSync ponyfills matching Node.js fs.rm API, plus safeRm/safeRmSync with Windows-friendly retry defaults. | 52.7k | - | - | 12 days ago 1.0.6 | ESM + CommonJS | Bundled | Files and file systems, Polyfills and shims | |
| dynamic-import-polyfill A polyfill for the native import() in the browser | 52.1k | +123% | - | 7 years ago 0.1.1 | ESM + CommonJS | None | Polyfills and shims | |
| @webcomponents/scoped-custom-element-registry Scoped CustomElementRegistry Polyfill | 52.1k | - | - | - | 1 year ago 0.0.10 | CommonJS | None | Polyfills and shims |
| xmldom-qsa Based on @xmldom/xmldom with some minor enhancements. Add querySelector, querySelectorAll and match method to Document and Element. | 51.9k | +314% | - | 3 years ago 1.1.3 | CommonJS | Bundled | Polyfills and shims | |
| transit-js Transit is a data format and a set of libraries for conveying values between applications written in different languages. This library provides support for marshalling Transit data to/from Javascript. | 51.4k | +15% | - | 5 years ago 0.8.874 | CommonJS | None | Polyfills and shims | |
| @zenfs/streams A modern node:stream polyfill | 50.8k | - | - | - | 13 days ago 1.0.1 | ESM only | Bundled | Polyfills and shims |
| @ungap/custom-elements All inclusive customElements polyfill for every browser | 49.6k | - | - | - | 3 years ago 1.3.0 | ESM + CommonJS | None | Polyfills and shims |
| @mcp-b/global W3C Web Model Context Protocol (WebMCP) API polyfill. Let AI agents like Claude, ChatGPT, and Gemini interact with your website via document.modelContext. | 49.4k | - | - | - | 25 days ago 5.1.0 | ESM only | Bundled | Polyfills and shims |
| hyperform Capture form validation back from the browser | 47.8k | +107% | - | 4 years ago 0.12.1 | ESM + CommonJS | Bundled | Polyfills and shims | |
| object-assign-polyfill Simple ES6 Object.assign() polyfill for older environments. | 46.9k | +36% | - | 10 years ago 0.1.0 | CommonJS | None | Polyfills and shims | |
| visibilityjs Wrapper for the Page Visibility API | 46.5k | +12% | - | 8 years ago 2.0.2 | - | None | Polyfills and shims | |
| cross-fetch-ponyfill Fetch polyfilled in Node only | 45.6k | +295% | - | 3 years ago 1.0.3 | ESM only | None | Polyfills and shims | |
| @fastly/performance-observer-polyfill <h1 align="center" style="border-bottom: none;">🔎 PerformanceObserver Polyfill</h1> <p align="center"> <a href="https://travis-ci.org/fastly/performance-observer-polyfill"> <img alt="Travis" src="https://img.shields.io/travis/fastly/performance-obs | 44.7k | - | - | - | 5 years ago 2.0.0 | ESM + CommonJS | Bundled | Polyfills and shims |
| promise.try ES Proposal spec-compliant shim for Promise.try | 44.6k | +29197% | - | 16 days ago 2.0.2 | CommonJS | None | Polyfills and shims | |
| keyboardevent-key-polyfill polyfill for `KeyboardEvent.prototype.key` | 43.5k | -10% | - | 9 years ago 1.1.0 | CommonJS | None | Polyfills and shims | |
| ember-cached-decorator-polyfill Polyfill for RFC 566: @cached | 43k | -22% | - | 3 years ago 1.0.2 | CommonJS | Bundled | Caching, Polyfills and shims | |
| focus-options-polyfill JavaScript polyfill for the WHATWG spec of focusOptions, that enables a set of options to be passed to the focus method. | 42.6k | -7% | - | 6 years ago 1.6.0 | CommonJS | None | Polyfills and shims | |
| broadcastchannel-polyfill Polyfill for BroadcastChannel for Safari, old Chrome and Opera | 41.4k | +60% | - | 6 years ago 1.0.1 | CommonJS | None | Polyfills and shims | |
| error-cause An ES-spec-compliant shim/polyfill/replacement for the `.cause` property on all Error types that works as far down as ES3 | 40.1k | -1% | - | 1 year ago 1.0.9 | CommonJS | None | Polyfills and shims | |
| @stdlib/utils-index-of Return the first index at which a given element can be found. | 38.6k | - | - | - | 7 months ago 0.2.3 | CommonJS | Bundled | Utility libraries, Polyfills and shims |
| fs-copy-file-sync fs.copyFileSync ponyfill | 38k | -13% | - | 8 years ago 1.1.1 | CommonJS | None | Polyfills and shims, Files and file systems | |
| @expo/browser-polyfill Browser polyfill for making React Native compatible with web libs like pixi.js, three.js, phaser.js | 38k | - | - | - | 2 years ago 1.0.1 | CommonJS | None | Polyfills and shims, React |
| function.name-polyfill Polyfill for the basic functionality of `Function.name` accessor property in its pre-ES6 form | 37.7k | -27% | - | 8 years ago 1.0.6 | CommonJS | None | Polyfills and shims | |
| @oddbird/css-anchor-positioning Polyfill for the proposed CSS anchor positioning spec | 37.6k | - | - | - | 1 month ago 0.10.2 | ESM + CommonJS | Bundled | Polyfills and shims, CSS-in-JS and styling |
| compression-streams-polyfill Lightweight polyfill/ponyfill for the Compression Streams API | 36.6k | +490% | - | 2 years ago 0.1.7 | ESM + CommonJS | Bundled | Compression and archives, Polyfills and shims | |
| webassemblyjs WebAssembly interpreter | 36k | +7% | - | 1 year ago 1.14.1 | ESM + CommonJS | None | Polyfills and shims, Parsers and serialisers | |
| bluebird-global Patches global.Promise to use bluebird and returns a bluebird instance | 35.4k | +122% | - | 9 years ago 1.0.1 | - | None | Promises and async control flow, Polyfills and shims | |
| mobile-drag-drop Polyfill for making HTML5 drag and drop possible in all browsers. | 35.1k | +50% | - | 3 years ago 3.0.0-rc.0 | CommonJS | Bundled | Polyfills and shims | |
| sugar A Javascript utility library for working with native objects. | 34.6k | -15% | - | 7 years ago 2.0.6 | CommonJS | Bundled | Polyfills and shims, Utility libraries | |
| browserify-shim Makes CommonJS-incompatible modules browserifyable. | 34.6k | -1% | - | 3 years ago 3.8.16 | CommonJS | None | Polyfills and shims | |
| disposablestack An ESnext spec-compliant `DisposableStack`, `AsyncDisposableStack`, `Symbol.dispose`, and `Symbol.asyncDispose` shim/polyfill/replacement that works as far down as ES3. | 34.6k | +125% | - | 5 months ago 1.1.8 | CommonJS | None | Polyfills and shims | |
| suppressed-error ES Proposal spec-compliant shim for SuppressedError | 34.5k | +127% | - | 2 years ago 1.0.3 | CommonJS | None | Polyfills and shims | |
| utils-indexof Returns the first index at which a given element can be found. | 33.8k | +15% | - | 10 years ago 1.0.0 | CommonJS | None | Polyfills and shims, Utility libraries | |
| ember-assign-polyfill A polyfill for Ember.assign in <= 2.4 | 33.5k | -10% | - | 3 years ago 2.7.3 | - | None | Polyfills and shims | |
| @inrupt/jest-jsdom-polyfills This package provides various polyfills needed on jest/jsdom when using the Inrupt SDKs | 33.4k | - | - | - | 2 months ago 4.1.5 | CommonJS | None | Polyfills and shims |
| error-polyfill Javascript Error Polyfill | 33.3k | -51% | - | 5 years ago 0.1.3 | CommonJS | None | Polyfills and shims | |
| scroll-behavior-polyfill A polyfill for the 'scroll-behavior' CSS-property | 32.8k | -20% | - | 6 years ago 2.0.13 | ESM + CommonJS | Bundled | Polyfills and shims, CSS-in-JS and styling | |
| indexeddbshim A polyfill for IndexedDB using WebSql | 31.3k | +406% | - | 1 day ago 19.0.7 | ESM + CommonJS | Bundled | Polyfills and shims | |
| frontend-collective-react-dnd-scrollzone A cross browser solution to scrolling during drag and drop. | 30.7k | -29% | - | 7 years ago 1.0.2 | CommonJS | None | DOM and browser utilities, React |
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.
- @ant-design/create-react-contextA fork of create-react-context in MIT license
- string.prototype.startswithA robust & optimized `String.prototype.startsWith` polyfill, based on the ECMAScript 6 specification.
- element-closest-polyfillA minimal polyfill for Element.closest
- @cto.af/textdecoderQuick wrapper that finds TextDecoder in your runtime, or uses an adequate polyfill
- navigator.sendbeaconPolyfill for navigator.sendBeacon()
- document-register-elementA stand-alone working lightweight version of the W3C Custom Elements specification
- @stdlib/math-base-special-acosCompute the arccosine of a double-precision floating-point number.
- array.prototype.foreachAn ES spec-compliant `Array.prototype.forEach` shim/polyfill/replacement that works as far down as ES3.
- ember-destroyable-polyfillPolyfill for RFC 580: Destroyables
- proxy-polyfillPolyfill for the Proxy object
- es6-promise-polyfillPolyfill for ES6 Promise
- fs-remove-compatCross-platform file removal utilities with Node.js 0.8+ compatibility. Provides rm and rmSync ponyfills matching Node.js fs.rm API, plus safeRm/safeRmSync with Windows-friendly retry defaults.
- dynamic-import-polyfillA polyfill for the native import() in the browser
- @webcomponents/scoped-custom-element-registryScoped CustomElementRegistry Polyfill
- xmldom-qsaBased on @xmldom/xmldom with some minor enhancements. Add querySelector, querySelectorAll and match method to Document and Element.
- transit-jsTransit is a data format and a set of libraries for conveying values between applications written in different languages. This library provides support for marshalling Transit data to/from Javascript.
- @zenfs/streamsA modern node:stream polyfill
- @ungap/custom-elementsAll inclusive customElements polyfill for every browser
- @mcp-b/globalW3C Web Model Context Protocol (WebMCP) API polyfill. Let AI agents like Claude, ChatGPT, and Gemini interact with your website via document.modelContext.
- hyperformCapture form validation back from the browser
- object-assign-polyfillSimple ES6 Object.assign() polyfill for older environments.
- visibilityjsWrapper for the Page Visibility API
- cross-fetch-ponyfillFetch polyfilled in Node only
- @fastly/performance-observer-polyfill<h1 align="center" style="border-bottom: none;">🔎 PerformanceObserver Polyfill</h1> <p align="center"> <a href="https://travis-ci.org/fastly/performance-observer-polyfill"> <img alt="Travis" src="https://img.shields.io/travis/fastly/performance-obs
- promise.tryES Proposal spec-compliant shim for Promise.try
- keyboardevent-key-polyfillpolyfill for `KeyboardEvent.prototype.key`
- ember-cached-decorator-polyfillPolyfill for RFC 566: @cached
- focus-options-polyfillJavaScript polyfill for the WHATWG spec of focusOptions, that enables a set of options to be passed to the focus method.
- broadcastchannel-polyfillPolyfill for BroadcastChannel for Safari, old Chrome and Opera
- error-causeAn ES-spec-compliant shim/polyfill/replacement for the `.cause` property on all Error types that works as far down as ES3
- @stdlib/utils-index-ofReturn the first index at which a given element can be found.
- fs-copy-file-syncfs.copyFileSync ponyfill
- @expo/browser-polyfillBrowser polyfill for making React Native compatible with web libs like pixi.js, three.js, phaser.js
- function.name-polyfillPolyfill for the basic functionality of `Function.name` accessor property in its pre-ES6 form
- @oddbird/css-anchor-positioningPolyfill for the proposed CSS anchor positioning spec
- compression-streams-polyfillLightweight polyfill/ponyfill for the Compression Streams API
- webassemblyjsWebAssembly interpreter
- bluebird-globalPatches global.Promise to use bluebird and returns a bluebird instance
- mobile-drag-dropPolyfill for making HTML5 drag and drop possible in all browsers.
- sugarA Javascript utility library for working with native objects.
- browserify-shimMakes CommonJS-incompatible modules browserifyable.
- disposablestackAn ESnext spec-compliant `DisposableStack`, `AsyncDisposableStack`, `Symbol.dispose`, and `Symbol.asyncDispose` shim/polyfill/replacement that works as far down as ES3.
- suppressed-errorES Proposal spec-compliant shim for SuppressedError
- utils-indexofReturns the first index at which a given element can be found.
- ember-assign-polyfillA polyfill for Ember.assign in <= 2.4
- @inrupt/jest-jsdom-polyfillsThis package provides various polyfills needed on jest/jsdom when using the Inrupt SDKs
- error-polyfillJavascript Error Polyfill
- scroll-behavior-polyfillA polyfill for the 'scroll-behavior' CSS-property
- indexeddbshimA polyfill for IndexedDB using WebSql
- frontend-collective-react-dnd-scrollzoneA cross browser solution to scrolling during drag and drop.