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

emoji-contextualizer

v1.0.4

Published

Emoji Contextualizer is a lightweight and customizable JavaScript library that replaces specific words or phrases in a string with contextually appropriate emojis. Perfect for chat applications, social media, or fun text transformations.

Readme

Emoji Contextualizer

Emoji Contextualizer is a lightweight & customizable JavaScript library that transforms plain text into fun, expressive emoji-enhanced text by replacing specific words or phrases with contextually appropriate emojis. Ideal for chat applications, social media platforms, or anywhere you want to add a touch of emoji magic! 🪄✨

Link to the package on npm

Features

  • Replace words or phrases in a string with relevant emojis based on customizable mappings.
  • Case-insensitive matching for seamless transformations.
  • Add your own custom emoji mappings, appending to or creating new mappings for the library.
  • Option to replace the word with the emoji or append the emoji after the word.
  • Perfect for social media platforms, chatbots, and fun blogs!
  • Outputs:
    • Original Text: The input text as-is.
    • Modified Text: The text with emojis substituted.
    • Found Emojis: A list of emojis and their corresponding words found in the text.
    • Emoji Mapping: The emoji mappings used to transform the text, including the default mappings and any custom mappings passed by the user.
    • Replace Type: The type of replacement used (replace or append).

Installation

Install the package via npm:

npm install emoji-contextualizer

Usage

Here’s how you can use Emoji Contextualizer:

// Import the library
const EmojiContextualizer = require("emoji-contextualizer");

// Initialize the library with custom mappings (Optional)
const customMapping = {
  "😂": ["happy"],
  "🌟": ["star", "shine"],
};

// Create an instance of the EmojiContextualizer class with custom mappings
const contextualizer = new EmojiContextualizer(customMapping);

// Input text to be contextualized
const inputText = "I love pizza, laughing, and shining like a star.";

// Contextualize the input text & log the result
const result = contextualizer.contextualize(inputText);
console.log(result);
/*
The result will consist of the original text, modified text, found emojis, and emoji mapping as follows
{
  originalText: 'I love pizza, laughing, and shining like a star.',
  modifiedText: 'I ❤️  🍕 , 😂 , and shining like a 🌟 .',
  foundEmojis: {
    '❤️': [ 'love' ],
    '😂': [ 'laughing' ],
    '🍕': [ 'pizza' ],
    '🌟': [ 'star' ]
  },
  emojiMapping: {
    '❤️': [ 'love', 'heart' ],
    '😂': [ 'laugh', 'funny', 'lol', 'laughing', 'happy' ],
    '🍕': [ 'pizza', 'food' ],
    '😎': [ 'cool', 'style' ],
    '🌟': [ 'star', 'shine' ]
  }
}
*/

For Maintainers

After making changes to the library, follow these steps to publish a new version to npm:

  1. Change the version in package.json.
  2. Run npm publish --access public to publish the package to npm.