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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@opuscapita/notification-client

v1.3.0

Published

Shared logic for websocket notification client for both BNAPP and IPA

Readme

Notification-Client Library

Overview

The Notification-Client library is a React-based solution designed to deliver real-time notifications to users in a web application. It integrates with a WebSocket backend (live-notification) to provide instant updates and filters notifications dynamically based on the currently active service within the application.

Key Features

  • Real-Time Updates: Utilizes WebSocket technology for immediate delivery of notifications.
  • Backend Filtering: The WebSocket backend (live-notification) filters notifications based on user roles and business partners before broadcasting.
  • Client-Side Service Filtering: The client filters notifications based on the currently displayed service (URL path).
  • Integration: Serves as a wrapper around the main application.

Requirements

The library can be used without any props:

<LiveNotificationContainer>
  {/* Your app content */}
</LiveNotificationContainer>

Optional props:

  • useMargin: Boolean to add margin to the container (default: false)
  • children: React nodes to be wrapped by the notification container

How It Works

  1. Backend Communication (live-notification): Connects to the WebSocket backend to receive live notifications.
  2. Backend Filtering: The server filters notifications by user roles and business partners before sending them to the client.
  3. Client-Side Filtering: The client filters notifications based on TargetServices matching the current URL path.
  4. Local Storage: Tracks read notifications to prevent displaying them again.
  5. Seamless Embedding: Acts as a container for the main application, wrapping its content and managing notifications without disrupting the user experience, showing notifications at the top of the screen.