
A centered hero with radial-masked grid backdrop, frosted logo tile, highlighted keyword in the headline, paired CTAs, and square outline buttons carrying saturated tech icons.
@shadcnblocks
block/hero12/hero12.tsx
import { ExternalLink } from "lucide-react";
import { cn } from "cn";
import { Button, buttonVariants } from "@/components/ui/button";
interface Hero12Props {
className?: string;
}
const Hero12 = ({ className }: Hero12Props) => {
return (
<section className={cn("relative overflow-hidden py-32", className)}>
<div className="absolute inset-x-0 top-0 flex h-full w-full items-center justify-center opacity-100">
<img
alt="background"
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/patterns/square-alt-grid.svg"
className="[mask-image:radial-gradient(75%_75%_at_center,white,transparent)] opacity-90"
/>
</div>
<div className="relative z-10 container">
<div className="mx-auto flex max-w-5xl flex-col items-center">
<div className="flex flex-col items-center gap-6 text-center">
<div className="rounded-xl bg-background/30 p-4 shadow-sm backdrop-blur-sm">
<img
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/block-1.svg"
alt="logo"
className="h-16"
/>
</div>
<div>
<h1 className="mb-6 text-2xl font-bold tracking-tight text-pretty lg:text-5xl">
Build your next project with{" "}
<span className="text-primary">Blocks</span>
</h1>
<p className="mx-auto max-w-3xl text-muted-foreground lg:text-xl">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Elig
doloremque mollitia fugiat omnis! Porro facilis quo animi
consequatur. Explicabo.
</p>
</div>
<div className="mt-6 flex justify-center gap-3">
<Button className="shadow-sm transition-shadow hover:shadow">
Get Started
</Button>
<Button variant="outline" className="group">
Learn more{" "}
<ExternalLink className="ml-2 h-4 transition-transform group-hover:translate-x-0.5" />
</Button>
</div>
<div className="mt-20 flex flex-col items-center gap-5">
<p className="font-medium text-muted-foreground lg:text-left">
Built with open-source technologies
</p>
<div className="flex flex-wrap items-center justify-center gap-4">
<a
href="#"
className={cn(
buttonVariants({ variant: "outline" }),
"group flex aspect-square h-12 items-center justify-center p-0",
)}
>
<img
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/logos/shadcn-ui-icon.svg"
alt="shadcn/ui logo"
className="h-6 saturate-0 transition-all group-hover:saturate-100"
/>
</a>
<a
href="#"
className={cn(
buttonVariants({ variant: "outline" }),
"group flex aspect-square h-12 items-center justify-center p-0",
)}
>
<img
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/logos/typescript-icon.svg"
alt="TypeScript logo"
className="h-6 saturate-0 transition-all group-hover:saturate-100"
/>
</a>
<a
href="#"
className={cn(
buttonVariants({ variant: "outline" }),
"group flex aspect-square h-12 items-center justify-center p-0",
)}
>
<img
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/logos/react-icon.svg"
alt="React logo"
className="h-6 saturate-0 transition-all group-hover:saturate-100"
/>
</a>
<a
href="#"
className={cn(
buttonVariants({ variant: "outline" }),
"group flex aspect-square h-12 items-center justify-center p-0",
)}
>
<img
src="https://deifkwefumgah.cloudfront.net/shadcnblocks/block/logos/tailwind-icon.svg"
alt="Tailwind CSS logo"
className="h-6 saturate-0 transition-all group-hover:saturate-100"
/>
</a>
</div>
</div>
</div>
</div>
</div>
</section>
);
};
export { Hero12 };


























