# missive/emoji-mart

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/missive-emoji-mart).**

9,393 stars · 903 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/missive/emoji-mart
- Homepage: https://missiveapp.com/open/emoji-mart
- awesome-repositories: https://awesome-repositories.com/repository/missive-emoji-mart.md

## Topics

`component` `emoji` `emoji-picker` `emoticons` `missive` `picker` `react` `twemoji`

## Description

Emoji Mart is a set of web components and tools for adding a searchable, customizable emoji picker to web applications. It provides a picker component for browsing and selecting emojis by category, a rendering component for displaying individual emojis from shortcodes or IDs, and a programmatic search library for looking up emoji metadata by keyword, native character, or shortcode.

The library structures emoji data into a precomputed index that supports real-time search filtering, category-based virtual scrolling, and skin tone modifiers. Custom emoji sets can be injected at runtime, merging user-defined images and keywords with the built-in library. The picker interface can be localized into over twenty languages through separate translation bundles, and its visual appearance—including theme, icon style, and navigation—can be adjusted to match the host application.

Emoji Mart also offers a custom emoji set manager for adding user-defined emojis with custom images, keywords, and skin tones. The components are rendered as custom HTML elements using the Web Components standard, making them framework-agnostic and reusable across different web projects.

## Tags

### User Interface & Experience

- [Emoji Pickers](https://awesome-repositories.com/f/user-interface-experience/emoji-pickers.md) — Ships a customizable, searchable emoji picker web component with multiple emoji sets and skin tone support.
- [Emoji Image Renderers](https://awesome-repositories.com/f/user-interface-experience/emoji-support/emoji-image-renderers.md) — Displays an individual emoji by its shortcode or ID using a dedicated web component. ([source](https://cdn.jsdelivr.net/gh/missive/emoji-mart@main/README.md))
- [Web Component Emoji Renderers](https://awesome-repositories.com/f/user-interface-experience/emoji-support/emoji-image-renderers/web-component-emoji-renderers.md) — Provides a dedicated web component for rendering individual emojis from shortcodes or IDs.
- [Appearance Customizations](https://awesome-repositories.com/f/user-interface-experience/emoji-pickers/appearance-customizations.md) — Allows adjusting the picker's theme, icon style, navigation, and preview layout to match the host application. ([source](https://missiveapp.com/open/emoji-mart))
- [Interface Localizations](https://awesome-repositories.com/f/user-interface-experience/emoji-pickers/interface-localizations.md) — Switches the picker's labels and messages to a supported language by loading a translation file. ([source](https://cdn.jsdelivr.net/gh/missive/emoji-mart@main/README.md))
- [Localized](https://awesome-repositories.com/f/user-interface-experience/emoji-pickers/localized.md) — Provides an emoji picker interface localized into over twenty languages for international users.
- [Emoji Skin Tone Modifiers](https://awesome-repositories.com/f/user-interface-experience/emoji-skin-tone-modifiers.md) — Applies skin tone variants to emojis via a modifier system using Unicode sequences.
- [Emoji Skin Tone Selectors](https://awesome-repositories.com/f/user-interface-experience/emoji-skin-tone-selectors.md) — Provides controls for choosing a skin tone modifier for applicable emojis before inserting them into content. ([source](https://missiveapp.com/open/emoji-mart/example-emoji-component.html))
- [Custom Emoji Registries](https://awesome-repositories.com/f/user-interface-experience/emoji-support/emoji-image-renderers/emoji-asset-mappings/custom-emoji-registries.md) — Injects user-defined emojis with custom images and keywords into the emoji index at runtime.
- [Emoji Picker Localizations](https://awesome-repositories.com/f/user-interface-experience/interface-localization-support/emoji-picker-localizations.md) — Ships translation bundles for over twenty languages to localize the emoji picker interface.
- [Locale Translation Bundles](https://awesome-repositories.com/f/user-interface-experience/interface-localizations/locale-translation-bundles.md) — Ships separate locale bundles that allow the picker interface to switch languages without recompilation.

### Business & Productivity Software

- [Emoji Search Tools](https://awesome-repositories.com/f/business-productivity-software/emoji-search-tools.md) — Ships a programmatic search engine that returns emoji metadata by keyword, native character, or shortcode.
- [Real-Time Emoji Searches](https://awesome-repositories.com/f/business-productivity-software/emoji-search-tools/real-time-emoji-searches.md) — Filters the emoji list in real time as the user types a keyword or name. ([source](https://missiveapp.com/open/emoji-mart/example-emoji-component.html))
- [Custom Emoji Management](https://awesome-repositories.com/f/business-productivity-software/custom-emoji-management.md) — Provides a manager for adding user-defined emojis with custom images, keywords, and skin tones.

### Content Management & Publishing

- [Emoji](https://awesome-repositories.com/f/content-management-publishing/category-organizations/product-categories/category-browsing/emoji.md) — Displays emojis grouped into categories so users can visually scan and pick the one they want. ([source](https://missiveapp.com/open/emoji-mart/example-emoji-component.html))

### Data & Databases

- [Curated Emoji Metadata Collections](https://awesome-repositories.com/f/data-databases/emoji-datasets/curated-emoji-metadata-collections.md) — Provides a precomputed index mapping emoji IDs, keywords, and native characters for fast lookup.
- [Search-As-You-Type Filters](https://awesome-repositories.com/f/data-databases/search-result-filtering/search-as-you-type-filters.md) — Filters the emoji index in real time as the user types, using keyword and name matching for instant results.

### Web Development

- [Web Component Renderers](https://awesome-repositories.com/f/web-development/web-component-renderers.md) — Renders the picker and individual emojis as custom HTML elements using the Web Components standard.

### Development Tools & Productivity

- [UI Localization](https://awesome-repositories.com/f/development-tools-productivity/language-support-extensions/ui-localization.md) — Switches the picker's interface labels to one of over twenty supported languages for a localized experience. ([source](https://missiveapp.com/open/emoji-mart))
