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

hot-tub-talk

v1.0.0

Published

A playful, animated web component for hot-tub-style conversations.

Readme

🛁 Hot Tub Talk

A delightful web component for embedding hot-tub-style conversations in HTML. Perfect for sharing wild thoughts and ideas in a bubbly, swirling hot tub UI.

✨ Features

  • 🌊 WebGL-powered water physics with realistic ripples
  • 🌙 Beautiful night-time ambiance with twinkling stars
  • 💨 Dynamic water jets and steam effects
  • 🖱️ Interactive water effects that respond to mouse movement
  • 📱 Responsive design that works on all devices
  • ⚡ Optimized performance with hardware acceleration
  • 🎨 Customizable appearance and behavior

Demo Page

📦 Installation

pnpm add hot-tub-talk

🚀 Usage

In HTML

<!-- Import the component -->
<script type="module">
  import 'hot-tub-talk';
</script>

<!-- Use the component -->
<hot-tub-talk>
  Is the universe a simulation? 🌌
  Here's the evidence:
  - The Mandela Effect 🤯
  - Déjà vu 🔄
  - Glitches in the Matrix 🐱‍💻
</hot-tub-talk>

In React

import 'hot-tub-talk';

function App() {
  return (
    <hot-tub-talk>
      Is consciousness just a simulation? 🤔
      Let's discuss...
    </hot-tub-talk>
  );
}

⚙️ Configuration

You can customize the hot tub behavior by passing options:

const options = {
  resolution: 512,      // Water simulation resolution
  dropRadius: 15,       // Size of water drops
  perturbance: 0.02,    // How much the water moves
  interactive: true,    // Enable mouse interaction
  crossOrigin: ''       // CORS setting for images
};

// Apply to an existing element
document.querySelector('hot-tub-talk').configure(options);

🎨 Styling

The component uses CSS custom properties for easy styling:

hot-tub-talk {
  --hot-tub-talk-background: rgba(30, 136, 229, 0.15);
  --hot-tub-talk-text-color: white;
  --hot-tub-talk-ripple-color: rgba(255, 255, 255, 0.2);
  --hot-tub-talk-steam-opacity: 0.4;
  --hot-tub-talk-border-radius: 20px;
}

🔧 Browser Support

  • Chrome/Edge (latest)
  • Firefox (latest)
  • Safari (latest)
  • Mobile browsers with WebGL support

🤝 Contributing

We love contributions! Please check out our Contributing Guide for guidelines.

📝 License

Ethical AI License © Hue and Aye

🙏 Acknowledgments

Special thanks to:

  • Trisha from Accounting for her endless enthusiasm
  • The WebGL Ripple Effect community
  • All our contributors and users

🐛 Troubleshooting

Common Issues

  1. WebGL not supported

    • The component will fallback to CSS-only effects
    • Check browser compatibility
  2. Performance Issues

    • Try reducing the resolution option
    • Disable interactive mode on mobile devices
  3. CORS Issues with Images

    • Set appropriate crossOrigin option
    • Ensure images are served with correct headers

💡 Tips

  • Use emojis to make your hot tub talks more expressive
  • Keep content concise for best visual effect
  • Experiment with different background colors
  • Consider night mode for best ambiance

🔄 Updates

Check our CHANGELOG.md for latest updates and improvements.