I considered a variety of ways to let the user provide an emoji but I ended up simply extracting the first emoji out of the user’s Name or “About Me” bio.
Got to learn all about the joys of unicode
I started down the path of supporting emoji in usernames but stopped after seeing discourse puts many guardrails around unicode in usernames.
P.S. thanks to @pfaffman’s name_first_letter plugin as a starting point. If no emoji is found this will fallback to using the first character (using grapheme_clusters) in the Name, and to the username if no Name.