Skip to content

Registering custom emojis

To register an emoji, create an Emoji instance and register it in the emoji registry using a NamespacedRegistryKey.

Registering a custom emoji
String namespace = "social"; // Recommended: use your plugin's name
String name = "dog"; // Unique identifier for the emoji
String aliases = "puppy"; // Optional alias
String unicodeCharacter = "🐶"; // Unicode representation

Emoji dogEmoji = Emoji.builder(name, unicodeCharacter)
    .aliases(alias)
    .build();

NamespacedRegistryKey key = RegistryKey.namespaced(namespace, name);
Social.registries().emojis().register(key, dogEmoji);

Getting an emoji by its namespaced key

String namespace = "social";
String name = "dog";
NamespacedRegistryKey key = RegistryKey.namespaced(namespace, name);

Optional<Emoji> optionalEmoji = Social.registries().emojis().value(key);

Getting all emojis within a namespace

String namespace = "social";
List<Emoji> emojiList = Social.registries().emojis().valuesByNamespaceComponent(namespace);

Getting all emojis matching a key

String key = "dog";
List<Emoji> emojiList = Social.registries().emojis().valuesByKeyComponent(key);