Emoji and Discourse

We've always had a strong relationship with Emoji. From the earliest days of Discourse, you could add Emoji to your posts by by typing : and using our handy Emoji autocompleter:

emoji-completion-2x

Of course : just so happens to be the first character of the most common ASCII smiley, our old pal :) – so hopefully it was discoverable.

Since then, we've continually refined and improved our Emoji support.

Added an Emoji Picker

discourse-emoji-picker

Sam whipped up this graphical emoji picker as an unplanned surprise in an earlier release and it works great! It's linked from the editor toolbar as well:

discourse-emoji-toolbar-button

We've since upgraded the Emoji picker even further to add text search and skin tone selection:

We also added a "more…" button to the autocomplete so even if you don't have the editor toolbar visible (or, say, you're on mobile), you can still get to the emoji picker.

discourse-emoji-picker-more

Added Multiple Emoji Families

We launched with the Apple Emoji set, although it isn't quite clear what the licensing terms are for that set. So we were very excited when Emoji One came along with an explicitly open source set of Emoji images, free for everyone! We immediately made Emoji One our default Emoji set.

slack-emoji-style-selector

There's a number of Emoji Families or "sets" to choose from, so once we added Emoji One we also added the other common families: Google / Android, Apple / iOS, Twitter, and of course Emoji One which is the default. We've also recently added Windows and Messenger emoji.

discourse-select-emoji-set

Visit your site settings and change your emoji set setting to taste.

Added Slight Smile

There was a surprising amount of consternation over the fact that Emoji, as originally defined, doesn't have a "plain" closed mouth smiley. I'm not sure why this is, but it's true:

Notice that none of those smiling Emoji faces, in any family, contains a simple closed mouth smile, the kind we associate with the classic 1960s and 1970s "Have a Nice Day" smile in American culture.

emoji-smile-vs-slightly-smiling

Fortunately Unicode 7 added something called slightly_smiling, so we've switched the default :) mapping to that.

Added Emoji to Topic Titles

Another persistent user request was for Emoji in topic titles, so Régis added that a few releases ago, too:

discourse-emoji-topic-titles

Nothing makes your topic stand out quite like a … :banana: does.

Added Unicode Emoji Remapping

Emoji went from a weird Japanese mobile quirk to being so completely mainstream that

tears-of-joy-emoji

was the 2015 "word" of the year. And starting in 2010, Emoji was added as part of the official Unicode standard.

Although having Emoji formalized in Unicode does wonders for standardizing the Emoji experience, the actual rendering of Unicode Emoji depends heavily on your platform and your browser. To address this, Robin just made it so that when we encounter a unicode Emoji in a Discourse post we automatically remap it to the correct Emoji image set, per your Discourse site settings.

discourse-emoji-unicode-remapping

This way, no matter how the Emoji is entered – via the Discourse picker, or via Unicode character typed with your local keyboard – it'll look consistently great, on any device, for any user.

Updated and Optimized Emoji Sets

There are a fair number of changes to Emoji each year, as Emoji become more and more of a cultural phenomenon.

In fact, we even formally sponsored the discussion Emoji to further the work of the Unicode consortium.

Discourse, official gold sponsort of the unicode consortium

The same is true of each iOS and Android release, which include refined Emoji as well as new ones. We regularly update each Emoji set to match as we release. We've also heavily optimized all our Emoji sets using Google's new zopfli PNG compression for speedy rendering.

In the current Discourse 1.5 beta, we're especially pleased to pull in the new, completely redesigned 2016 Emoji One set, which looks fantastic!

Emoji One also provides essential Emoji references as a public service:

At Discourse, we’re true blue_heartEmoji fans. We want you to have fun and express yourself with the deep Emoji support in Discourse! And, as always, let us know how we can continue to improve your Emoji experience. plus-one