On this page
Overview
Show code, Conversation.tsx
Variants
- Yours
The person using the app: a compact bubble at the end.
- Someone else's
Anyone else, such as an assistant: full width, no bubble, room for a formatted answer.
Show code, FormattedAnswer.tsx
Anatomy
List
Message
Author
Meta
Content
Actions
Status
Show code, MessageAnatomy.tsx
Behaviour
Delivery status
A message can show that it is on its way, or that it wasn't sent.
- Offer Try again beside one that failed.
Show code, DeliveryStatus.tsx
Adapting to width
Your own bubble grows to three quarters of the list, and keeps a readable width in a narrow list.
Show code, BubbleWidth.tsx
Rules
The bubble means you; everyone else's messages run at full width, in the order they were sent.
Use it when
- A conversation with a person or an assistant
- A thread of comments, each with its author and time
- A reply that streams in while people read
Show code, CommentThread.tsx
Show code, SelfForOthers.tsx
Order and focus
Keep messages oldest first, in one list.
- Leave focus where it is as new ones arrive: the list announces them.
Content
Name icon actions after what they do, such as Copy answer.