An EventTarget Polyfill

Usage no npm install needed!

<script type="module">
  import eventTargetPolyfill from 'https://cdn.skypack.dev/event-target-polyfill';


npm version Node.js CI


A polyfill for EventTarget (and Event), meant to run in older version of node or possibly IE 11, that has the most accurate set of characteristics of EventTarget that can be provided.

If you find this implementation can be improved, please submit a PR and ping me on Twitter via DM.

NOTE: If you are using Node 14 and higher, EventTarget is available directly via experimental features MDN: EventTarget


import 'event-target-polyfill';

const et = new EventTarget();

et.addEventListener('test', () => console.log('hit!'));

et.dispatchEvent(new Event('test'));


This library has no dependencies. Even development dependencies. To test just run npm test. It runs a script, and if it finishes without error, the tests pass.