features-2
fulldev-ui/features-2FreeBlock
fulldev/ui publishes no description for this item.
Live preview
live · rendered by the registry
Rendered by fulldev/ui on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://ui.full.dev/r/features-2.jsonSource
1---2import { cn } from "@/lib/utils"3import { Button } from "@/components/ui/button"4import { Icon } from "@/components/ui/icon"5import { Section, SectionContainer } from "@/components/ui/section"67type Props = {8 class?: string9 title: string10 description: string11 buttons?: {12 label: string13 href: string14 variant?: "default" | "outline" | "secondary" | "ghost"15 }[]16 features: {17 title: string18 description: string19 icon: string20 }[]21}2223const { class: className, title, description, buttons, features } = Astro.props24---2526<Section class={cn("", className)}>27 <SectionContainer class="items-center gap-6 text-center">28 <div class="flex max-w-2xl flex-col items-center gap-4">29 <h230 class="text-foreground text-3xl font-semibold tracking-tight text-balance sm:text-4xl"31 >32 {title}33 </h2>34 <p35 class="text-muted-foreground max-w-2xl text-lg leading-relaxed text-balance"36 >37 {description}38 </p>39 </div>40 {41 buttons?.length && (42 <div class="flex flex-wrap justify-center gap-3">43 {buttons.map(({ href, label, ...button }, index) => (44 <Button45 as="a"46 href={href}47 variant={button.variant ?? (index === 0 ? "default" : "outline")}48 {...button}49 >50 {label}51 </Button>52 ))}53 </div>54 )55 }56 </SectionContainer>57 <SectionContainer>58 <div class="grid overflow-hidden rounded-xl sm:grid-cols-2 lg:grid-cols-3">59 {60 features.map((feature) => (61 <div class="group/feature hover:bg-accent/30 relative flex flex-col items-center gap-4 border-b p-7 text-center transition-colors sm:nth-last-[-n+2]:border-b-0 lg:nth-last-[-n+3]:border-b-0">62 <div class="bg-primary/10 text-primary ring-primary/15 flex size-10 items-center justify-center rounded-lg ring-1 transition-transform ring-inset group-hover/feature:scale-105">63 <Icon name={feature.icon} class="size-5" />64 </div>65 <h3 class="text-foreground text-base font-medium tracking-tight text-balance">66 {feature.title}67 </h3>68 <p class="text-muted-foreground text-sm leading-relaxed text-balance">69 {feature.description}70 </p>71 </div>72 ))73 }74 </div>75 </SectionContainer>76</Section>
What it pulls in
Other registry items
Files it writes
More from fulldev/ui
All 144 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| article-1article-1 | fulldev/ui | Blocks | Free | no deps | |
| article-2article-2 | fulldev/ui | Blocks | Free | no deps | |
| articles-1articles-1 | fulldev/ui | Blocks | Free | no deps | |
| articles-2articles-2 | fulldev/ui | Blocks | Free | no deps | |
| articles-3articles-3 | fulldev/ui | Blocks | Free | no deps | |
| articles-4articles-4 | fulldev/ui | Blocks | Free | no deps | |
| banner-1banner-1 | fulldev/ui | Blocks | Free | no deps | |
| banner-2banner-2 | fulldev/ui | Blocks | Free | no deps |
