Cta Blocks for Shadcn UI

13 Cta blocks built with Shadcn UI, Tailwind & React.

cta10

Free
import { Button } from "@/components/ui/button";
interface Cta10Props {
heading: string;
description: string;
buttons?: {
primary?: {
text: string;
url: string;
};
secondary?: {
text: string;
url: string;
};
};
}
const Cta10 = ({
heading = "Ready to Get Started?",
description = "Join thousands of satisfied customers using our platform to build amazing websites.",
buttons = {
primary: {
text: "Get Started",
url: "https://www.shadcnblocks.com",
},
secondary: {
text: "Learn More",
url: "https://www.shadcnblocks.com",
},
},
}: Cta10Props) => {
return (
<section className="py-32">
<div className="container">
<div className="flex w-full flex-col gap-16 overflow-hidden rounded-lg bg-accent p-8 md:rounded-xl lg:flex-row lg:items-center lg:p-16">
<div className="flex-1">
<h3 className="mb-3 text-2xl font-semibold md:mb-4 md:text-4xl lg:mb-6">
{heading}
</h3>
<p className="text-muted-foreground lg:text-lg">{description}</p>
</div>
<div className="flex shrink-0 flex-col gap-2 sm:flex-row">
{buttons.secondary && (
<Button variant="outline" asChild>
<a href={buttons.secondary.url}>{buttons.secondary.text}</a>
</Button>
)}
{buttons.primary && (
<Button asChild>
<a href={buttons.primary.url}>{buttons.primary.text}</a>
</Button>
)}
</div>
</div>
</div>
</section>
);
};
export { Cta10 };

cta11

Free
import { Button } from "@/components/ui/button";
interface Cta11Props {
heading: string;
description: string;
buttons?: {
primary?: {
text: string;
url: string;
};
secondary?: {
text: string;
url: string;
};
};
}
const Cta11 = ({
heading = "Ready to Get Started?",
description = "Join thousands of satisfied customers using our platform to build amazing websites.",
buttons = {
primary: {
text: "Get Started",
url: "https://www.shadcnblocks.com",
},
secondary: {
text: "Learn More",
url: "https://www.shadcnblocks.com",
},
},
}: Cta11Props) => {
return (
<section className="py-32">
<div className="container">
<div className="flex flex-col items-center rounded-lg bg-accent p-8 text-center md:rounded-xl lg:p-16">
<h3 className="mb-3 max-w-3xl text-2xl font-semibold md:mb-4 md:text-4xl lg:mb-6">
{heading}
</h3>
<p className="mb-8 max-w-3xl text-muted-foreground lg:text-lg">
{description}
</p>
<div className="flex w-full flex-col justify-center gap-2 sm:flex-row">
{buttons.secondary && (
<Button variant="outline" className="w-full sm:w-auto" asChild>
<a href={buttons.secondary.url}>{buttons.secondary.text}</a>
</Button>
)}
{buttons.primary && (
<Button className="w-full sm:w-auto" asChild>
<a href={buttons.primary.url}>{buttons.primary.text}</a>
</Button>
)}
</div>
</div>
</div>
</section>
);
};
export { Cta11 };

cta4

Basic

cta13

Basic

cta7

Pro

cta6

Pro

cta5

Pro

cta3

Pro

cta12

Pro

cta1

Pro

cta17

Pro

cta15

Pro

cta16

Pro