Better-Mitt: A tiny (~400B) TypeScript-first event emitter that improves on Mitt

3 dhax_or 3 5/26/2025, 8:52:37 AM npmjs.com ↗

Comments (3)

dhax_or · 2d ago
I built this as an improved version of the popular Mitt library. It keeps the tiny footprint (~400 bytes gzipped) while adding genuinely useful features that I found myself needing in real projects:

- once() for one-time listeners - hasListeners() and listenerCount() for introspection - clear() to reset everything - Safer emission that protects against handler modification during events - Full TypeScript support with generic types

Same familiar API as Node's EventEmitter and original Mitt, so it's a drop-in replacement. I've been using it in production and it's been solid.

GitHub: https://github.com/Dhaxor/better-mitt

NPM: npm install better-mitt

Would love feedback from the community - and if you find it useful, a GitHub star would be much appreciated!

nakamurahiro1 · 2d ago
Great work! I've always wanted a once in an event emitter but mitt never had that
softwarefef · 2d ago
I guess the increase in bytes was because of the added functionalities?