Skip to main content
Clever Ops

Calendar Slot CTA

Book-a-time CTA offering three preformatted next-available slots as pills with a fallback link, calendar energy through callbacks alone, no scheduling dependency.

Preview & code

Loading Calendar Slot CTA preview

Installation

pnpm dlx shadcn@latest add @cleverui/cta-calendar-slot

Requires the @cleverui registry in your components.json, a one-off, two-line setup.

Usage

tsx
import { CtaCalendarSlot } from '@/components/blocks/cta-calendar-slot'
Exampletsx
import { CtaCalendarSlot } from '@/components/blocks/cta-calendar-slot'

export default function CtaCalendarSlotDemo() {
  return (
    <CtaCalendarSlot
      eyebrow="Book a walkthrough"
      heading="Pick a time, see it live"
      description="Thirty minutes with a Meridian engineer, your stack, your data model, no slide deck."
      slots={[
        { day: 'Tue 21 Jul', time: '10:30' },
        { day: 'Wed 22 Jul', time: '14:00' },
        { day: 'Thu 23 Jul', time: '09:15' },
      ]}
      timezoneNote="All times AEST"
      fallback={{ label: 'See full calendar', href: '#calendar' }}
    />
  )
}

API reference

CtaCalendarSlot accepts the following props.

PropTypeDefaultDescription
eyebrowstring'Book a walkthrough'
heading*string
descriptionstring
slots*{ day: string; time: string }[]exactly 3 preformatted next-available slots as static strings, never computed from Date in render
timezoneNotestring'All times AEST'mono line under the pills stating the timezone honestly
onSelect(index: number) => voidcalled with the chosen slot index, wire Calendly, Cal.com or your own scheduler
fallback{ label: string; href: string }escape hatch for people whose time is not listed

…plus everything from Omit<React.HTMLAttributes<HTMLElement>, 'onSelect'>: className, event handlers, aria attributes and the rest pass straight through.

Frequently asked questions

How do I install the Calendar Slot CTA component?

Register the @cleverui registry in your components.json ("@cleverui": "https://cleverops.com.au/r/{name}.json"), then run `npx shadcn@latest add @cleverui/cta-calendar-slot`. The shadcn CLI copies the source into your project, you own the code from that point. You can also copy the source directly from this page.

What dependencies does Calendar Slot CTA require?

Calendar Slot CTA uses motion and lucide-react on top of React and Tailwind CSS. You don't need to install them manually, the shadcn CLI resolves and installs npm dependencies automatically when you add the component.

Can I theme Calendar Slot CTA to match my brand?

Yes. The component is styled entirely with Tailwind utilities over standard design tokens (primary, background, muted, border), so it inherits your existing shadcn/ui theme automatically. Change your CSS variables and the component follows, no source edits needed for palette, radius, or fonts.

Want this built for you?

CleverUI is built by the Clever Ops web team. If you'd rather ship a hand-coded, fast, custom website than assemble one, we build them for Australian businesses every week.

Explore web development services