Demo
Creating Genmoji
On an iOS device running iOS 26 or later, enable Apple Intelligence: Open Settings ▸ Apple Intelligence & Siri and turn on the switch next to Apple Intelligence if it’s not already on.
Open Messages, start a New Message and tap the message field. Switch to the Emoji keyboard:
Tap the Add Genmoji button, then type a description like “hippo on skis”, and select from the suggested images.
Notice your new Genmoji appears in the message field, not as an image attachment. Type some normal text — Genmoji appear inline, just like emoji.
To make it easier to test your code in this module, select and copy the message text, then paste it into a note in Notes.
This note will sync with Notes on your Mac, so you’ll be able to copy-paste the text into the Xcode simulator.
Entering Genmoji in an App
Now, open the starter project for lesson 1. ContentView has two TextEditor views, each with a binding to the text it displays, which the user can change. The plan is to enter text with Genmoji in the top text view, then copy and paste the text into the bottom text view. But this doesn’t work yet. To see this, build and run the app in a simulator.
When the app opens, focus is already set to the top text editor, and the keyboard is open. Copy your text with Genmoji from Notes and paste it into the top text editor:
Only the plain text appears. No Genmoji! Change the text variables to AttributedString, not String:
@State var textTop: AttributedString = AttributedString("")
@State var textBottom: AttributedString = AttributedString("")
Build and run again and copy-paste your text with Genmoji.

It works! Select some text and check out the options: Format, More… lets you increase the font size for your selection, and you can also copy and paste it into the bottom text editor. Success!
Note: There’s a bug that replaces the second Genmoji with the first when you increase the font size.