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

notifyx

v4.0.1

Published

AI-native toast notification library — premium glassmorphism design, 5 animations, streaming AI support, priority queue, zero dependencies, < 7KB gzipped.

Readme

🚀 NotifyX v4

The professional-grade notification library built for the AI era.

Visually stunning for designers, robust enough for complex architectures, and optimized for real-time AI streaming.

npm version npm downloads bundle size TypeScript license

DemoInstallationAI IntegrationStack UIThemes


✨ Why NotifyX?

NotifyX v4 is engineered from the ground up to solve the challenges of modern web applications. Whether you are building an LLM-powered agent workflow, a Next.js SaaS, or an interactive dashboard, NotifyX delivers a pristine user experience.

Competitive Differentiation

| Feature | NotifyX v4 | react-hot-toast | sonner | react-toastify | | :--- | :---: | :---: | :---: | :---: | | Stack-Based UI | ✅ Elegant 3D | ❌ | ✅ | ❌ | | AI/Streaming API | ✅ Native | ❌ | ❌ | ❌ | | MCP-Ready | ✅ | ❌ | ❌ | ❌ | | Web Animations API | ✅ GPU Accelerated | ❌ | limited | limited | | Theme System | ✅ 6 robust themes | ❌ | partial | partial | | Vanilla JS Support| ✅ | ❌ | ❌ | partial | | Priority Queue | ✅ | ❌ | ❌ | ❌ | | Zero Dependencies | ✅ | ✅ | ✅ | ❌ | | Bundle < 7KB | ✅ | ✅ | ✅ | ❌ |


📦 Installation

# npm
npm install notifyx

# pnpm
pnpm add notifyx

# bun
bun add notifyx

Setup

import NotifyX from 'notifyx';
import 'notifyx/style.css'; // Required for UI styling

NotifyX.success('Ready for the AI era! 🚀');

🏗 Stack-Based UI & Priority Queue

NotifyX v4 departs from legacy list-based rendering, introducing a Stack-Based Architecture. Notifications gracefully stack with dynamic transform: scale() and translateY() 3D layering, saving vertical screen real estate while feeling incredibly premium.

Under the hood, the Priority Queue Manager handles influxes of notifications perfectly. If an application throws 20 events at once, NotifyX will instantly display the allowed maximum (maxToasts), gracefully holding the rest in memory and seamlessly rendering them as active toasts are dismissed.


🤖 AI & MCP Integration

NotifyX provides first-class support for AI metadata, rendering Model Context Protocol (MCP) tool calls, token counts, and latency flawlessly.

NotifyX.ai("Processing context...", {
  ai: {
    model: "claude-3-5-sonnet",
    toolName: "read_file",
    latencyMs: 1240,
    tokens: 450
  }
});

It renders elegantly with a custom icon, specialized color palettes, and a structured metadata bar showcasing agent workflow steps.


🌊 Streaming API

LLMs stream responses token-by-token. NotifyX's StreamingBridge ensures smooth, jank-free progressive text rendering.

const stream = NotifyX.stream("Thinking...", {
  ai: { model: "gpt-4o", streaming: true },
  position: "bottom-right"
});

// Stream chunks as they arrive
stream.update("I have found ");
stream.update("the specific bug ");
stream.update("in your code.");

// Finalize
stream.success("Analysis complete!", {
  ai: { streaming: false, latencyMs: 850 }
});

A blinking cursor is natively rendered while streaming is active!


⏳ Promise API

Manage asynchronous workflows beautifully.

NotifyX.promise(
  fetch('/api/user/profile'),
  {
    loading: 'Loading profile...',
    success: 'Profile loaded!',
    error: 'Failed to fetch profile'
  }
);

🎨 Zero-Dependency Theme System

NotifyX v4 ships with 6 distinct, highly-polished themes powered by Vanilla CSS Custom Properties—no Tailwind required.

  • auto (Default) — Adapts to OS preference
  • light — Pristine, modern white
  • dark — Deep, sleek dark mode
  • glass — Premium frosted glassmorphism
  • minimal — Flat, pure content focus
  • brutal — Monochrome, monospace brutalist

Usage:

// Globally
NotifyX.setTheme('glass');

// Per-Toast
NotifyX.success('Task complete', { theme: 'brutal' });

🎬 Animation Engine

Powered by the Web Animations API for buttery-smooth 60fps rendering, bypassing Main Thread blocking.

  • spring (Default) — Bouncy, physical, lively
  • slide — Smooth directional translation
  • bloom — Elegant scale and fade
  • flip — 3D spatial rotation
  • fade — Simple opacity transition
NotifyX.info('System update', { animation: 'bloom' });

🛠️ Advanced Subsystem Accessors

Because NotifyX v4 is built on a modular architecture, we expose the underlying subsystems directly on the NotifyX object for advanced control:

  • NotifyX.queue: Access the Min-Heap priority queue (ToastQueue) instance. Manage overflow, peak queued states, or manually flush items.
  • NotifyX.animation: Access the AnimationEngine directly. Hook into the Web Animations API (WAAPI) engine to apply staggerEnter, pulse, or shake animations to your own UI elements.
  • NotifyX.stream_bridge: Access the StreamBridge utility. Use its fromIterable and pipe helpers to map arbitrary LLM data streams directly into DOM nodes.

⚙️ Global Configuration

NotifyX.configure({
  theme: 'glass',
  animation: 'spring',
  position: 'top-right',
  duration: 4000,
  maxToasts: 3,
  pauseOnHover: true
});