Social Post GridPRO

A social proof grid of six linked post cards, each with an avatar, handle, timestamp, the post itself, and reply, repost, and like counts under a hairline.

Social49: Social Post Grid

A social proof grid of six linked post cards, each with an avatar, handle, timestamp, the post itself, and reply, repost and like counts under a hairline.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/social49?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/social49?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/social49.tsx plus the badge23 and button21 components it uses for the eyebrow and the closing action.

Quick start

The installed file exports social49Demo alongside the block: the exact props behind the preview above. Spread it to get a working grid in one line.

tsx
import { Social49, social49Demo } from "@/components/beste/block/social49";

export default function PostsPage() {
  return <Social49 {...social49Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { Social49 } from "@/components/beste/block/social49";

export default function PostsPage() {
  return (
    <Social49
      badge={{ label: "Said in public" }}
      heading="What practices posted without being asked to"
      description="None of these were solicited and none were paid for."
      posts={[
        {
          name: "Tom Ashby",
          handle: "@tomashby",
          avatar: { src: "/people/tom.jpg", alt: "Portrait of Tom Ashby" },
          body: "Four clinics, one waiting list, and the first Monday in years where nobody rang round.",
          time: "2h",
          replies: "12",
          reposts: "34",
          likes: "218",
          href: "https://example.com/post/1",
        },
        {
          name: "Elena Rourke",
          handle: "@elenarourke",
          avatar: { src: "/people/elena.jpg", alt: "Portrait of Elena Rourke" },
          body: "Eleven years of records moved over a weekend. I had budgeted three weeks.",
          time: "1d",
          replies: "31",
          reposts: "96",
          likes: "540",
          href: "https://example.com/post/2",
        },
      ]}
      button={{ label: "Read them in full", href: "/testimonials" }}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }Eyebrow above the hairline rule, rendered through Badge23
headingstringSection heading in the left column of the header
descriptionstringSupporting paragraph, right-aligned from md up
postsPost[][]Post cards, three across from lg
button{ label: string; href: string }Centered outline action under the grid
classNamestringExtra classes for the outer section
ts
type ActionLink = {
  label: string;
  href: string;
};

type Post = {
  name: string;
  handle: string;
  avatar: { src: string; alt: string };
  body: string;
  time: string;
  replies: string;
  reposts: string;
  likes: string;
  href: string;
};

Behavior notes

More Social blocks

View all Social
PRO

social50

Featured Post And Replies

A social section that gives one post an image tile of its own, floating a live post card with its engagement counts, beside the replies it drew as linked hairline rows.

PRO

social2

Social Post Card

Social media post with author info, text content, image, and interactive like/comment/share/bookmark buttons with counts. Perfect for feed-style content displays.

PRO

social46

Community Card

Community group card with cover image, privacy status, member/post counts, topic tags, and join button. Perfect for community discovery and group suggestions.

PRO

social52

Community Sessions

An upcoming sessions list with a date block, format, and remaining seats on each linked hairline row, beside a column that sticks and floats a live card for whoever is hosting next.

PRO

social54

Inverted Follow Panel

A follow section held in one dark panel, listing each account as a linked hairline row with what gets posted there and a light follower figure.

PRO

social55

Community By The Numbers

A community section on a soft surface with four bordered figure cards, each explaining what the number counts, over an image tile that floats a live cluster of member portraits.

Markdown version