Skip to content
JS
Package category

Polyfills and shims

Backfill missing language and platform features.

622 packages2 comparisons

Packages compared

622 packages
PackageWeekly downloads12-month change52 weeksGzipLast releaseModuleTypesCategories
promise.prototype.finally
ES Proposal spec-compliant shim for Promise.prototype.finally
745.7k-39%-2 years ago
3.1.8
CommonJSNonePolyfills and shims
smoothscroll-polyfill
Smooth Scroll behavior polyfill
732.4k+43%-7 years ago
0.4.4
CommonJSNonePolyfills and shims
@hypnosphi/create-react-context
Polyfill for the proposed React context API
717.8k---5 years ago
0.3.1
CommonJSBundledPolyfills and shims, React
well-known-symbols
An ESnext spec-compliant shim/polyfill/replacement for all Well-Known Symbols that works in any environment with Symbols.
716.7k+1%-1 year ago
4.1.0
CommonJSNonePolyfills and shims
imsc
Renders IMSC documents to HTML5 fragments
700.3k+243%-2 years ago
1.1.5
CommonJSNonePolyfills and shims
@deno/shim-deno
Deno namespace shim for Node.js
659.7k---2 years ago
0.19.2
ESM + CommonJSBundledPolyfills and shims
@deno/shim-deno-test
Deno.test only shim.
651.8k---2 years ago
0.5.0
CommonJSBundledPolyfills and shims
minimal-polyfills
An ultra light-weight, nonexhaustive, polyfills library
642.4k+609%-3 years ago
2.2.3
CommonJSBundledPolyfills and shims
is-integer
ES2015 (ES6) Number.isInteger polyfill
641.7k+16%-9 years ago
1.0.7
CommonJSNonePolyfills and shims
fs-access
Node.js 0.12 fs.access() & fs.accessSync() ponyfill
641.6k+1%-7 years ago
2.0.0
-NonePolyfills and shims
url-search-params-polyfill
a simple polyfill for javascript URLSearchParams
641.4k+41%-3 years ago
8.2.5
CommonJSNonePolyfills and shims
null-check
Ensure a path doesn't contain null bytes
640.2k-1%-5 years ago
3.0.0
ESM onlyNonePolyfills and shims
@formatjs/intl-pluralrules
Polyfill for Intl.PluralRules
638.1k---13 days ago
6.3.15
ESM onlyBundledInternationalisation, Polyfills and shims
symbol.prototype.description
Spec-compliant shim for Symbol.prototype.description proposal.
599.4k-43%-9 months ago
2.0.0
CommonJSBundledPolyfills and shims
airbnb-js-shims
JS language shims used by Airbnb.
598.6k-39%-6 years ago
2.2.1
CommonJSNonePolyfills and shims
reflect.ownkeys
ES2015 spec-compliant shim for Reflect.ownKeys
596.1k-35%-8 months ago
1.1.6
CommonJSNonePolyfills and shims
headers-utils
A Headers class polyfill and transformation library.
595.7k+33%-5 years ago
3.0.2
CommonJSBundledPolyfills and shims, HTTP clients
url-polyfill
Polyfill URL and URLSearchParams
571.9k+36%-1 year ago
1.1.14
CommonJSNonePolyfills and shims, URLs and query strings
dc-browser
Browser polyfill for Node.js diagnostics_channel
557.8k--5 months ago
1.0.4
ESM + CommonJSBundledPolyfills and shims
@stdlib/fs-exists
Test whether a path exists on the filesystem.
542k---7 months ago
0.2.3
CommonJSBundledFiles and file systems, Polyfills and shims
array-find
ES6 Array.find ponyfill. Return the first array element which satisfies a testing function.
538k-37%-11 years ago
1.0.0
CommonJSNonePolyfills and shims
intl
Polyfill the ECMA-402 Intl API (except collation)
523.9k-10%-10 years ago
1.2.5
CommonJSNoneInternationalisation, Polyfills and shims
math-log2
ES2015 Math.log2() ponyfill
517.7k+77%-5 years ago
2.0.0
-NonePolyfills and shims
standardized-audio-context
A cross-browser wrapper for the Web Audio API which aims to closely follow the standard.
505.4k+166%-2 years ago
25.3.77
ESM + CommonJSBundledVideo and audio, Polyfills and shims
regexp.escape
A robust ES3-compatible polyfill for the `RegExp.escape` proposal - see https://github.com/tc39/proposal-regex-escaping
504k+189%-2 years ago
2.0.1
CommonJSNonePolyfills and shims
number-is-integer
ES2015 Number.isInteger() ponyfill
494.9k+78%-5 years ago
2.0.0
-NonePolyfills and shims
core-assert
Node.js `assert` as a standalone module
467.1k+58%-7 years ago
1.0.0
-NoneTesting, Polyfills and shims
buf-compare
Node.js `Buffer.compare()` ponyfill
464.1k+67%-8 years ago
2.0.0
-NonePolyfills and shims
deep-strict-equal
Test for deep equality - Node.js `assert.deepStrictEqual()` algorithm as a standalone module
434.5k+71%-5 years ago
0.3.0
-NonePolyfills and shims
custom-event-polyfill
A polyfill for creating CustomEvents on IE9+ if the native implementation is missing.
431.8k+34%-7 years ago
1.0.7
CommonJSNonePolyfills and shims
dommatrix
ES6+ shim for DOMMatrix
424.1k+3%-4 years ago
1.0.3
ESM + CommonJSBundledPolyfills and shims
url-extras
Browser-compatible implementations of some of Node.js' URL utilities
418.6k--10 months ago
0.1.0
ESM onlyBundledURLs and query strings, Polyfills and shims
@webcomponents/custom-elements
HTML Custom Elements Polyfill
411.4k---3 years ago
1.6.0
CommonJSNonePolyfills and shims
canvas-roundrect-polyfill
CanvasRenderingContext2D.roundRect() and Path2D.roundRect() polyfill
408.7k+1092%-4 years ago
0.0.1
CommonJSNonePolyfills and shims
@formatjs/intl-numberformat
Ponyfill for ES2020 Intl.NumberFormat
404.6k---10 days ago
9.4.3
ESM onlyBundledInternationalisation, Polyfills and shims
fetch-jsonp
Fetch JSONP like a boss using Fetch API
404.1k+464%-6 months ago
1.4.0
CommonJSBundledHTTP clients, Polyfills and shims
document.contains
Polyfill/shim for `document.contains`
403.4k+16%-6 years ago
1.0.2
CommonJSNonePolyfills and shims
array.prototype.at
An ES-spec-compliant (proposed) Array.prototype.at shim/polyfill/replacement that works as far down as ES3
382.7k+577%-16 days ago
1.2.0
CommonJSBundledPolyfills and shims
esbuild-plugins-node-modules-polyfill
Polyfills nodejs builtin modules and globals for the browser.
372.7k+51%-1 month ago
1.8.3
CommonJSBundledPolyfills and shims, Bundler plugins and loaders
array.prototype.every
An ES5 spec-compliant `Array.prototype.every` shim/polyfill/replacement that works as far down as ES3.
359.5k+75%-1 year ago
1.1.7
CommonJSNonePolyfills and shims
node-status-codes
Node.js `http.STATUS_CODES` ponyfill
316.8k+11%-7 years ago
3.0.0
-NonePolyfills and shims
mouse-event
Cross browser mouse event property access
313.8k+25%-11 years ago
1.0.5
CommonJSNonePolyfills and shims
mouse-change
Mouse state change listener
313.8k+19%-9 years ago
1.4.0
CommonJSNonePolyfills and shims
messageformat
Intl.MessageFormat / Unicode MessageFormat 2 parser, runtime and polyfill
309.9k-6%-9 months ago
4.0.0
ESM onlyBundledInternationalisation, Polyfills and shims
monitor-event-loop-delay
Polyfill for perf_hooks.monitorEventLoopDelay(...)
305.4k+10%-7 years ago
1.0.0
CommonJSNonePolyfills and shims
shallow-clone-shim
Shallow clones an object while respecting the original property descriptors
303.5k-3%-6 years ago
2.0.0
CommonJSNonePolyfills and shims
classlist-polyfill
Cross-browser JavaScript shim that fully implements element.classList (referenced on MDN)
273k-1%-9 years ago
1.2.0
CommonJSNonePolyfills and shims
blob-polyfill
Blob.js implements the W3C Blob interface in browsers that do not natively support it.
271.4k+18%-2 years ago
9.0.20240710
CommonJSNonePolyfills and shims
es-set
An ES-spec-compliant Set shim/polyfill/replacement that works as far down as ES3
264.6k+1291%-1 year ago
2.0.1
CommonJSNonePolyfills and shims
@formatjs/intl-datetimeformat
Intl.DateTimeFormat polyfill
260.5k---7 days ago
7.8.0
ESM onlyBundledInternationalisation, Polyfills and shims

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.