Staaarter

Split Video CTA

A split layout: badge, heading, a short feature checklist, and action buttons sit on the left, while a rounded, bordered video panel plays a looping demo video on the right, stacking to a single column on mobile.

By Staaarter Team
CTA
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button, badge dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/split-video-cta.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/cta/cta54.tsx instead.

Usage

The file also exports cta54Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Cta54, cta54Demo } from "@/components/blocks/cta/cta54";

export default function Page() {
  return <Cta54 {...cta54Demo} />;
}

Props

PropTypeDefaultDescription
badgeLabelstring"What's new"Badge pill text above the heading, omit to hide it.
headingstring"See the editor in motion"Main headline.
descriptionstringnoneSupporting copy under the heading.
featuresstring[]noneShort feature checklist items shown below the description.
primaryLabelstring"Try it live"Primary button label.
primaryHrefstring"#"Primary button destination.
secondaryLabelstring"Read the docs"Secondary button label, omit to hide the button.
secondaryHrefstring"#"Secondary button destination.
videoSrcstringnoneURL of the looping video shown in the right-hand panel (MP4).
posterSrcstringnonePoster image shown before the video has loaded.
classNamestringnoneExtra classes for the outer section element.

Behavior notes

  • The video autoplays muted and looped purely through native HTML attributes (`autoPlay loop muted playsInline`) — there is no JavaScript play/pause control in this demo.
  • A real integration should add a user-facing mute/pause control for accessibility (respecting prefers-reduced-motion and giving users a way to stop the motion); that is intentionally not implemented here.
  • The video panel is contained (rounded corners, border, `aspect-video`) rather than full-bleed, unlike this category's cinematic-hero variants.