Skip to content

JoshuaKGoldberg/emoji-platform-data

Repository files navigation

Emoji Platform Data

Static export of platform-specific metadata for unicode emojis. πŸ—οΈ

πŸ‘ͺ All Contributors: 2 🀝 Code of Conduct: Kept πŸ“ License: MIT πŸ“¦ npm version πŸ’ͺ TypeScript: Strict

Usage

npm i emoji-platform-data
import { byTitle } from "emoji-platform-data";

console.log(byTitle["Sparkling Heart"]);
/*
{
	emoji: "πŸ’–",
	emojipedia: { "currentCldrName": "Sparkling Heart", ... },
	fluemoji: { "cldr": "sparkling heart", ... },
	gemoji: { "description": "sparkling heart", ... },
	twemoji: { "description": "Sparkling heart", ... },
	...
}
*/

emoji-platform-data combines emoji data from the following projects:

Each emoji supported in at least one of those projects is stored by its emoji glyph and Emojipedia title.

Explainer

πŸ“™ This documentation uses the excellent emojipedia.org as a source of information.

Emojis

An emoji is a small image represented by a glyph in text. The Unicode Standard defines which characters in text map to which emojis, as well as how combinations of emoji characters combine to more emojis. For example:

πŸ’‘ Emojis are not the same as their predecessors, emoticons. Emoticons are symbols that combine traditional text characters, such as :) for "smiley" and (β•―Β°β–‘Β°)β•―οΈ΅ ┻━┻ for "table flip".

πŸ†” Identity

The formal name, or πŸ†” identity, for each emoji is standardized in Unicode. However, emojis may be associated with multiple names across different specifications. For example, πŸ‘Ώ can be referred to either as "Angry Face with Horns" or "Imp" depending on the source.

πŸ”— Keywords

In addition to their name(s), emojis commonly have related terms, or πŸ”— keywords, associated with them. These keywords are not standardized and may vary drastically across the various chat applications, operating systems, and shared open source libraries that each separately implement emoji pickers.

For example, πŸ™ (octopus) is defined in emoji-mart@5.5.2 -used by Bluesky and other projects- with ["animal", "creature", "ocean", "sea", "nature", "beach"].

Platforms

This project attempts to bring together the πŸ†” identity and πŸ”— keywords across several sources of emoji data, each defined as a "platform". Platforms include:

Any grouping of emoji πŸ†” identity and πŸ”— keywords used by consumers today can qualify as a platform.

πŸš€ If your platform isn't included in emoji-platform-data and doesn't have a tracking platform-support issue, please file an issue asking for it!

Why?

This is useful if you're looking to see the metadata supported for emojis in each of those platforms. For example, if you wanted to determine the keywords associated with any emoji, this would let you accumulate all the keywords across the supported platforms.

Contributors

Dario Vladović
Dario Vladović

πŸ€” πŸ“–
Josh Goldberg ✨
Josh Goldberg ✨

πŸ’» πŸ–‹ πŸ“– πŸ€” πŸš‡ 🚧 πŸ“† πŸ”§

πŸ’™ This package was templated with create-typescript-app.