The marquee feature for v0.3 is support for **grapheme clusters** in addition to individual code points. Demicode also gained the ability to iterate over grapheme cluster breaks, so that it can validate user input.
For **emoji sequences**, demicode goes further and makes their **names** available, including those only published with the CLDR. Furthermore, demicode now displays the age in terms of the **Unicode Emoji version**, e.g., `E0.7`. Next, demicode now uses an improved width calculation for emoji, ensuring that they always have double width—unless they are paired with a text variation selector. To enable that functionality, demicode tracks more UCD properties.
Finally, this release enables **logging** for remote interactions, adds some **tests**, and performs optional **validation of UCD data**.