Team Member Grid

Team section with an eyebrow, big heading, description and CTA above a responsive grid of people cards (portrait image, name, role).

PRO

About60: Team Member Grid

Team section with an eyebrow, heading, description, and a right-aligned CTA above a responsive grid of people cards, each a portrait image with a name and role beneath it.

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.

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/about60?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

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

This installs the block to components/beste/block/about60.tsx, the badge7 component it uses for the eyebrow label, the button12 component it uses for the CTA, and its dependencies.

Quick start

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

tsx
import { About60, about60Demo } from "@/components/beste/block/about60";

export default function Page() {
  return <About60 {...about60Demo} />;
}

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

tsx
import { About60 } from "@/components/beste/block/about60";

export default function Page() {
  return (
    <About60
      badge={{ label: "The people" }}
      heading="Small team, <strong>senior hands.</strong>"
      description="No layers of account managers, no junior pass-throughs."
      button={{ label: "Meet the studio", href: "/team" }}
      people={[
        { name: "Mara Vance", role: "Founder & Creative Director", image: { src: "https://images.unsplash.com/photo-1648556873591-4b378146bd1c?w=900&fit=crop", alt: "Portrait of Mara Vance" } },
        { name: "Idris Okonkwo", role: "Principal Brand Designer", image: { src: "https://images.unsplash.com/photo-1637920448395-4173703a18c8?w=900&fit=crop", alt: "Portrait of Idris Okonkwo" } },
        { name: "Lena Sorensen", role: "Motion & Type Lead", image: { src: "https://images.unsplash.com/photo-1770896689034-770c5d284163?w=900&fit=crop", alt: "Portrait of Lena Sorensen" } },
      ]}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }Eyebrow text rendered in a Badge7
headingstringSection heading; supports inline HTML (<strong>)
descriptionstringSupporting paragraph next to the heading
buttonActionButtonCTA rendered as an outline-tone Button12, right-aligned on desktop
peopleAbout60Person[][]Team member cards
classNamestringExtra classes for the outer <section>
ts
type ActionButton = { label: string; href: string };
type About60Person = { name: string; role: string; image: { src: string; alt: string } };

Behavior notes

More About blocks

View all About
PRO

about68

Team Portrait Grid

A team section with an eyebrow over a hairline rule, a two-column heading, and a grid of portrait cards each with a name and role.

PRO

about7

Team Cards with Bios

Three-column grid of team member cards with avatars, roles, and short bios. Great for leadership and team pages.

PRO

about20

Team Photo & List

Wide team photo, member list with avatars, team stats grid, and a culture quote. A rich team showcase layout.

PRO

about1

Team & Mission

Two-column about section with mission statement, company stats, and team member grid. Perfect for company pages and landing sections.

PRO

about66

About with Stats Grid

Two-column about with a tall image on one side and an eyebrow, heading, description, and 2x2 stats grid on the other.

PRO

about29

Wide Banner & Product Cards

Centered header with wide panoramic image, product cards with layered attributes, and sourcing grid.