Chat Message List
Display a conversation thread with message bubbles that automatically align sent messages to the right and received messages to the left. Supports images, timestamps, avatars, and a built-in input bar β everything you need for a polished chat experience.
Before You Begin
You need a Messages collection with fields for message text, sender ID, sender name, sender avatar URL, and a timestamp.
Your conversation screen should know which conversation is active so you can filter the Messages collection to only show that conversation's messages.
Getting Started
Map your fields
Open Item Template and map your fields:
Message Text Field β the field containing the message body
Sender ID Field β the field identifying who sent the message (e.g., user ID)
Sender Name Field β the sender's display name
Sender Avatar β the sender's avatar URL
Timestamp Field β the message timestamp
Image Field β the URL of any inline image (optional)
Settings
Item Template
Maps your collection data to the chat display.
Message Text Field β The text content of the message.
Sender ID Field β Used to determine which side of the conversation the message appears on.
Sender Name Field β Displayed above or alongside received messages.
Sender Avatar β The URL of the sender's profile photo.
Timestamp Field β The date/time the message was sent.
Image Field β The URL of an attached image (optional).
Message Settings
Empty State Message β Text shown when there are no messages yet. Defaults to "No messages yet."
Logged In User ID β Set to Logged In User > ID using Magic Text. Messages whose Sender ID matches this value appear as sent (right side). All others appear as received (left side).
Logged In User Messages β Which side to place the logged-in user's messages: Right (default) or Left.
Message Type β What content messages can include: Text Only or Text + Image.
Show Avatars β Toggle on to display sender avatars next to received messages.
Avatar Size β The diameter of sender avatars in pixels (default: 32).
Image Max Width β Maximum width of inline images in pixels (100β400, default: 200).
Bubble Style β The shape of message bubbles: Rounded, Soft, or Square.
Max Bubble Width (%) β How wide bubbles can get relative to the chat area (50β90%, default: 75%).
Show Timestamps β Toggle timestamp display below messages.
Timestamp Format β Relative ("2 min ago") or Absolute ("3:42 PM").
Messages Per Page β How many messages to load at a time (default: 20).
Input Bar
Show Input Bar β Toggle off to hide the input bar entirely (useful for read-only views).
Placeholder Text β The placeholder shown in the input field when empty.
Show Formatting Toggle β Toggle on to display a formatting toolbar button.
Toggle Icon β The icon used for the formatting toggle button.
Input Area Height β The height of the input area in pixels.
Input Background Color β Background color of the input field.
Send Button Color β Color of the send button.
Send Button Icon β The icon inside the send button.
Toolbar Icon Color β Color of the formatting toolbar icons.
Colors
Background Color β The chat area background.
Sent Bubble Color β The color of the current user's message bubbles. Uses your app's primary color by default.
Sent Text Color β Text color in sent message bubbles.
Received Bubble Color β The color of other users' message bubbles.
Received Text Color β Text color in received message bubbles.
Timestamp Color β Color of timestamp text.
Date Separator Color β Color of the horizontal date dividers.
Actions
On Send Message β Fires when the user taps the send button with text in the input field. Use this to create a new message record in your database. *Make sure to leave the image field blank
On Send Image Message β Fires when the user sends an image. Use this to create a new message record with the image URL.
On Message Tap β Fires when a message bubble is tapped.
On Image Tap β Fires when an inline image is tapped. Use this to open a full-screen image viewer.
Links added in a message are automatically detected and clickable within the message thread.
Tips
Always set Logged In User ID using Magic Text so the component correctly identifies sent vs. received messages.
Filter your Messages collection by conversation ID before binding β never load all messages from all conversations.
Use On Send Message to both create the message record and update a "Last Message At" timestamp on the conversation record so your Conversation List stays sorted correctly.
Toggle Show Input Bar off if you're building a read-only view (e.g., a moderation or support screen).
Set Messages Per Page to 20β30 for most use cases. Lower values load faster on first open; higher values reduce the need to paginate.
Links added are automatically detected and clickable within the message.
Need Help?
Visit forum.adalo.com to ask questions or share what you've built.
Last updated
Was this helpful?