import {
BatteryCharging,
GitPullRequest,
Layers,
RadioTower,
SquareKanban,
WandSparkles,
} from "lucide-react";
import { cn } from "@/lib/utils";
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
interface Feature {
heading: string;
description: string;
icon: React.ReactNode;
}
interface Feature17Props {
label?: string;
title?: string;
features: Feature[];
buttonText?: string;
buttonUrl?: string;
className?: string;
}
const Feature17 = ({
label = "Features",
title = "Fully featured components for Shadcn UI & Tailwind",
features = [
{
heading: "Quality",
description:
"Built with attention to detail and best practices. Every component is thoroughly tested and follows modern React patterns for reliability and performance.",
icon: <GitPullRequest className="size-4 md:size-6" />,
},
{
heading: "Experience",
description:
"Crafted with user experience in mind. Each component is designed to be intuitive, accessible, and provide smooth interactions across all devices.",
icon: <SquareKanban className="size-4 md:size-6" />,
},
{
heading: "Support",
description:
"Comprehensive documentation and community support. Get help when you need it with detailed guides, examples, and active community assistance.",
icon: <RadioTower className="size-4 md:size-6" />,
},
{
heading: "Innovation",
description:
"Cutting-edge design patterns and modern web technologies. Stay ahead with the latest trends in UI/UX design and development practices.",
icon: <WandSparkles className="size-4 md:size-6" />,
},
{
heading: "Results",
description:
"Proven track record of successful implementations. These components have been battle-tested in real-world applications and deliver consistent results.",
icon: <Layers className="size-4 md:size-6" />,
},
{
heading: "Efficiency",
description:
"Optimized for performance and developer productivity. Lightweight, fast-loading components that help you build faster without compromising on quality.",
icon: <BatteryCharging className="size-4 md:size-6" />,
},
],
buttonText = "More Features",
buttonUrl = "https://shadcnblocks.com",
className,
}: Feature17Props) => {
return (
<section className={cn("py-32", className)}>
<div className="container">
{(label || title) && (
<div className="mb-12 flex max-w-3xl flex-col gap-4">
<Badge variant="secondary">{label}</Badge>
<h2 className="text-3xl font-medium md:text-4xl lg:text-5xl">
{title}
</h2>
</div>
)}
<div className="grid gap-12 md:grid-cols-2">
{features.map((feature, idx) => (
<div className="flex gap-6 space-y-4 rounded-lg md:block" key={idx}>
<span className="flex size-10 shrink-0 items-center justify-center rounded-full bg-accent md:size-12">
{feature.icon}
</span>
<div>
<h3 className="font-medium md:mb-2 md:text-xl">
{feature.heading}
</h3>
<p className="text-sm text-muted-foreground md:text-base">
{feature.description}
</p>
</div>
</div>
))}
</div>
{buttonUrl && (
<div className="mt-16 flex justify-center">
<Button size="lg" asChild>
<a href={buttonUrl}>{buttonText}</a>
</Button>
</div>
)}
</div>
</section>
);
};
export { Feature17 };