Updated
Chat screens
Two kinds of conversation, drawn in Appetite UI, a Figma UI kit for iOS and Android apps built like a design system: people talking to people in the social app, and a person talking to a model in the AI app. They share the composer and differ in what a reply can hold.
Updated
Screens
Every screen of the Appetite UI Figma file that shows the pattern, light and dark. The theme switch shows the dark frames.












| App | Screen | What it shows | Page |
|---|---|---|---|
| Social media app | Chats | Stories with online dots and the list of conversations | Social media app chat |
| Social media app | Chat | One conversation and its reply field | Social media app chat |
| AI chat app | New chat | An empty prompt with four suggestions | AI chat app |
| AI chat app | Thread | A question, a reply with a table and sources, and the reply actions | AI chat app |
| AI chat app | Generating | A reply that is still arriving, with a stop button | AI chat app |
| AI chat app | Error | A failed reply with a retry | AI chat app |
Which components carry the chat pattern?
Drawn live from the kit's tokens, at the kit's geometry. Tap them: they behave as the Figma prototype does.
AI / Message and AI / Prompt Composer
What does every chat screen do?
The rules the screens above share. Each app's page says how its screen applies them.
| Rule | Why |
|---|---|
| The composer stays put | The field to write in sits at the bottom of every thread, in every state, so the next message is always one tap away. |
| A reply can be more than text | A model’s reply holds tables, sources, files and pictures, so the AI thread draws replies as full width messages rather than bubbles. |
| Show the state, not a spinner | A reply that is still arriving shows a typing indicator and a stop button. A reply that failed says why and offers Try again. |
What changes between iOS and Material?
The frames are drawn in the ios-md Platform mode. Switch a frame to android and these variables take the Material values.
| Variable | iOS (ios-md) | Android |
|---|---|---|
platform/min-touch-target | 44 | 48 |
platform/control/corner | 8 | Full (9999) |
| Component | iOS | Material 3 | What differs |
|---|---|---|---|
| Text field | iOS / Text Field | M3 / Text Field, Filled or Outlined, 56 high | Material has Enabled, Focused, Error and Disabled states |
Start from these screens.
Every frame on this page is part of the Appetite UI file, drawn from its components and bound to its variables, so one brand edit moves every screen in light and dark.
The file holds 589 variables in 6 collections and exports its token values to SwiftUI, Jetpack Compose, Flutter and CSS. Solo covers one designer and Team up to ten people. You pay once and keep lifetime updates. Price goes up Nov 1
The read-only Figma preview opens the whole file, every screen and every variable, before you buy.