npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

impulses

v1.1.0

Published

Non-Obstructive Modular Event System

Readme

Impulses

Impulses (pronounced /'ɪmpʌls/ [singular], from latin impulsus) is a modular event system library. It was designed from the beginning to be easy to integrate. It consists of an approachable core library that focuses on basic functions to allow communication between senders and receivers.

Bird's Eye View

In a fast mode explanation, this project aims to provide a communication system that

  • allows Event-driven Architecture Pattern or Saga Pattern (microservices),
  • prevents bugs in client side (no fatal errors on console),
  • allows feature testing without breaking functionality,
  • allows message tracing (for debug)
  • allows parallel execution out-of-the-box by using (WebWorkers)
  • allows easy integration with none or close to none change on code already existing
  • allows multi layer event system architecture to hide/protect functionality from being exposed
  • allows message queuing
  • allows flow control, local and overall

Supporting Impulses

Impulses.js is an MIT-licensed open source project. It's an independent project with its ongoing development made possible entirely thanks to the support by these awesome backers. If you'd like to join them, please consider:

What's the difference between Patreon and OpenCollective?

Funds donated via Patreon go directly to support Joao Correia full-time work on impulses.js and many other ideas. Funds donated via OpenCollective are managed with transparent expenses and will be used for compensating work and expenses for core team members or sponsoring community events. Your name/logo will receive proper recognition and exposure by donating on either platform.

Documentation

To check out live examples (in development) and docs, visit impulses.disp.work(soon).

Issues

Please make sure to read the Issue Reporting Checklist (available very soon) before opening an issue. Issues not conforming to the guidelines may be closed immediately.

Changelog

Detailed changes for each release are documented in the release notes.

Contribution

Please make sure to read the Contributing Guide before making a pull request.

Big Thanks

Cross-browser Testing Platform and Open Source ❤️ provided by Sauce Labs

License

MIT

Copyright (c) 2017-present, João Correia