features-4
fulldev-ui/features-4FreeBlock
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-4.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 href?: string21 linkText?: string22 }[]23}2425const { class: className, title, description, buttons, features } = Astro.props26---2728<Section class={cn("", className)}>29 <SectionContainer>30 <div class="grid gap-12 lg:grid-cols-[1fr_2fr] lg:items-start">31 <div class="lg:sticky lg:top-28">32 <h233 class="text-foreground text-3xl font-semibold tracking-tight text-balance sm:text-4xl"34 >35 {title}36 </h2>37 <p38 class="text-muted-foreground mt-4 text-base leading-relaxed text-balance"39 >40 {description}41 </p>42 {43 buttons?.length && (44 <div class="mt-6 flex flex-wrap gap-3">45 {buttons.map(({ href, label, ...button }, index) => (46 <Button47 as="a"48 href={href}49 variant={50 button.variant ?? (index === 0 ? "default" : "outline")51 }52 {...button}53 >54 {label}55 </Button>56 ))}57 </div>58 )59 }60 </div>61 <div class="grid gap-6 sm:grid-cols-2">62 {63 features.map((feature) => (64 <div class="group/feature hover:bg-muted/40 flex flex-col gap-4 rounded-xl border p-6 transition-colors">65 <div class="bg-primary/10 text-primary flex size-10 items-center justify-center rounded-lg">66 <Icon name={feature.icon} class="size-5" />67 </div>68 <div class="flex flex-col gap-1.5">69 <h3 class="text-foreground text-base font-medium">70 {feature.title}71 </h3>72 <p class="text-muted-foreground text-sm leading-relaxed">73 {feature.description}74 </p>75 </div>76 {feature.href && feature.linkText && (77 <a78 href={feature.href}79// … truncated
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 |
