Split Hero with Metric Dashboard

50/50 split hero with content left and metric dashboard cards with trend badges over video right

PRO

Hero96: Split Hero with Metric Dashboard

Fullscreen 50/50 hero with content on the left and a video or image panel on the right, overlaid with a floating 2-column grid of metric cards: a large value, an optional trend badge with an up arrow, and a label. Built for stat-heavy positioning like "by the numbers" sections.

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

Base UI flavor

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

This installs the block to components/beste/block/hero96.tsx and the shadcn/ui primitives it depends on: Badge and Button.

Quick start

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

tsx
import { Hero96, hero96Demo } from "@/components/beste/block/hero96";

export default function Page() {
  return <Hero96 {...hero96Demo} />;
}

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

tsx
import { ArrowRight } from "lucide-react";
import { Hero96 } from "@/components/beste/block/hero96";

export default function Page() {
  return (
    <Hero96
      badge={{ label: "By the Numbers", variant: "secondary" }}
      heading="Performance you can measure, results you can trust"
      description="Real, measurable improvements across your development workflow."
      buttons={[{ label: "See It in Action", href: "/demo", variant: "default", icon: ArrowRight }]}
      backgroundMedia={{ type: "image", src: "/hero/dashboard.jpg", alt: "Dashboard" }}
      metrics={[
        { value: "3.2s", label: "Avg. Build Time", trend: "-67%" },
        { value: "99.99%", label: "Uptime SLA", trend: "+0.04%" },
        { value: "52k", label: "Active Teams", trend: "+180%", span: "wide" },
      ]}
    />
  );
}

Props

PropTypeDefaultDescription
badgeBadgeSmall pill above the heading
headingstringMain headline
descriptionstringSupporting paragraph under the heading
buttonsButton[][]CTA buttons, rendered in order
backgroundMediaBackgroundMediaMedia behind the metric grid on the right panel
metricsMetricCard[][]Stat cards floating over the media
classNamestringExtra classes for the outer <section>
ts
type Badge = { label: string; variant?: "default" | "secondary" | "outline" };
type Button = { label: string; href: string; variant?: "default" | "outline"; icon?: LucideIcon };
type BackgroundMedia = { type: "image" | "video"; src: string; alt?: string };
type MetricCard = { value: string; label: string; trend?: string; span?: "normal" | "wide" };

Behavior notes

More Hero blocks

View all Hero
PRO

hero25

Dashboard Preview Hero

Split-layout hero with interactive dashboard mockup featuring stats cards, line chart, and recent activity feed. Perfect for SaaS and analytics platforms.

PRO

hero61

Split Hero with Floating Feature Cards

Two-column hero with announcement banner, social proof metrics, and three floating feature cards with hover animations. Perfect for SaaS product launches.

PRO

hero93

Asymmetric Split Hero with Quick Links

40/60 asymmetric split hero with narrow content panel and vertical quick links over video

PRO

hero102

Split Hero with Timeline Steps

50/50 split hero with content left and vertical numbered timeline overlay on video right

PRO

hero89

Reverse Split Hero with Testimonial

50/50 split hero with video/image left and content with testimonial quote right

PRO

hero91

Split Hero with Feature List Panel

50/50 split hero with muted content panel and feature list left, video/image right