Promo Card

Join the beta program

We are opening a short testing window for the new builder. Help shape it before launch.

Only 25 seats

Applications close Jul 18.

Request access
About this component

Promo Card

A dismissible promo card with image, deadline line, and apply button for programs and offers.

Usage

The import and the props worth knowing about, in one place.

import { Card28 } from "@/components/beste/component/card28";

// The corner X hides the banner and fires onDismiss.
<Card28
  src="/promos/beta.jpg"
  title="Join the beta program"
  description="Help shape the new builder before launch."
  highlight="Only 25 seats"
  note="Applications close Jul 18."
  cta="Request access"
  href="/beta"
  onDismiss={() => console.log("dismissed")}
/>

<Card28
  src="/promos/workshop.jpg"
  title="Free workshop this Thursday"
  cta="Save my seat"
  permanent     // hide the dismiss button
  tone="dark"   // CTA: "primary" (default) | "dark"
  onClick={() => console.log("save seat")}
/>

Keyboard and gestures

Every one of these is in the component already. They are listed because a props table cannot mention a gesture, so nothing else on this page can tell you they exist.

The dismiss buttonTakes the card off the page unless `permanent` is set, and calls `onDismiss` so the page can remember.

Props

Read from the component's own type, so this cannot drift from what it accepts.

PropTypeDefaultDescription
src*string—Square image on the left
title*string—Banner title
descriptionstring—Supporting text under the title
highlightstring—Bold highlight line (e.g. "Only 25 seats")
notestring—Muted note under the highlight (e.g. a deadline)
cta*string—Pill button label
hrefstring—If set, the button renders as a link to this href
onClickReact.MouseEventHandler<HTMLButtonElement>—Button click handler (used when there is no href)
permanentboolean—Hide the dismiss button
onDismiss() => void—Called when the card is dismissed
tone"primary" | "dark"—CTA color
classNamestring—Additional classes merged onto the root

More Card components

View all Card
Most popular

Pro

$19/month

For freelancers shipping client sites.

  • Unlimited projects
  • 1,400+ blocks and components
  • Lifetime updates
  • Priority support

No credit card required

Atlas Field Watch-22%

Atlas Field Watch

4.8
$249$320
LUMO

LUMO

Field Camera

Launching Friday

Join the waitlist

Join list