Principles Card Grid

Principles section with a header and a three-column grid of six bordered cards, each pairing a circular icon with a title and description.

PRO

About64: Principles Card Grid

Principles section with a left-aligned header (eyebrow badge, heading, description) above a three-column grid of bordered cards, each pairing a circular icon with a title and a short explanation. Reads as a studio's short list of non-negotiables rather than a generic feature grid.

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

Base UI flavor

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

This installs the block to components/beste/block/about64.tsx, the badge7 component it uses for the eyebrow badge, and its dependencies.

Quick start

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

tsx
import { About64, about64Demo } from "@/components/beste/block/about64";

export default function AboutPage() {
  return <About64 {...about64Demo} />;
}

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

tsx
import { Ruler, PenTool, Layers } from "lucide-react";
import { About64 } from "@/components/beste/block/about64";

export default function AboutPage() {
  return (
    <About64
      badge={{ label: "How we think" }}
      heading="Three ideas we do not <strong>compromise on.</strong>"
      description="A short list of convictions that decide what we ship."
      items={[
        {
          icon: Ruler,
          title: "Restraint over decoration",
          description: "Every element earns its place before it lands on the canvas.",
        },
        {
          icon: PenTool,
          title: "Type does the talking",
          description: "A layout that reads well in plain text is worth designing around.",
        },
        {
          icon: Layers,
          title: "Systems, not one-offs",
          description: "We design the rules first, then the screens.",
        },
      ]}
    />
  );
}

Props

PropTypeDefaultDescription
badgeBadgeEyebrow badge above the heading
headingstringSection heading; supports inline <strong> for muted emphasis
descriptionstringSupporting paragraph under the heading
itemsAbout64Principle[][]Principle cards rendered in the grid
classNamestringExtra classes for the outer <section>
ts
type Badge = { label: string };
type About64Principle = { icon: LucideIcon; title: string; description: string };

Behavior notes

More About blocks

View all About
PRO

about6

Numbered Principles

Asymmetric two-column layout with heading on the left and numbered company principles on the right. Clean and editorial.

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

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

about18

Office Locations Grid

Four-column grid of office cards with city, country, address, and team size. Ideal for global companies.

PRO

about16

Vision Mission Values

Three-column cards for vision, mission, and values with labeled headers. Clean editorial layout for company positioning.

PRO

about60

Team Member Grid

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