Chat Card

Selin Aksoyonline

The new landing page is live!

Already? That was two days of work at most

Blocks. It is all blocks.

About this component

Chat Card

A chat conversation card with message bubbles and a typing indicator for testimonials and support sections.

Usage

The import and the props worth knowing about, in one place.

import { Card22 } from "@/components/beste/component/card22";

<Card22
  name="Selin Aksoy"
  status="online"
  src="/avatars/selin.jpg"
  messages={[
    { from: "them", text: "The new landing page is live!" },
    { from: "me", text: "Already? That was two days at most" },
  ]}
  typing   // show the bouncing typing indicator
/>

<Card22
  messages={[
    { from: "them", text: "Can you send the invoice?" },
    { from: "me", text: "Done, check your inbox" },
  ]}
  tone="emerald"   // your bubbles: "primary" (default) | "emerald" | "dark"
/>

Props

Read from the component's own type, so this cannot drift from what it accepts.

PropTypeDefaultDescription
namestring—Contact name in the header
statusstring—Muted status line under the name (e.g. "online")
srcstring—Contact avatar URL
messages*Card22Message[]—The conversation, in order
typingboolean—Show a typing indicator bubble at the end
tone"primary" | "emerald" | "dark"—Color of your own bubbles
classNamestring—Additional classes merged onto the root

More Card components

View all Card
We rebuilt our marketing site in a weekend. The blocks are clean, accessible, and the code reads like we wrote it ourselves.
Mary PollockFounder, Nordwind

Ready when you are

Start building today

Copy your first block in under a minute. No account needed.

Featured

Pro blocks drop monthly

A new themed set of sections lands every month, with free updates forever.

Learn more