Card
blacksite/cardFreeComponent
Surface primitive used as the base for panels and stat cards.
Install it
npx shadcn@latest add https://blacksite.sh/r/card.jsonSource
1import * as React from "react";23import { cn } from "@/lib/utils";45const Card = React.memo(6 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(7 ({ className, ...props }, ref) => (8 <div9 ref={ref}10 className={cn(11 "border-border bg-card text-card-foreground rounded-md border shadow-[var(--shadow-panel)]",12 className,13 )}14 {...props}15 />16 ),17 ),18);19Card.displayName = "Card";2021const CardHeader = React.memo(22 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(23 ({ className, ...props }, ref) => (24 <div ref={ref} className={cn("flex flex-col gap-1 p-4", className)} {...props} />25 ),26 ),27);28CardHeader.displayName = "CardHeader";2930const CardTitle = React.memo(31 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(32 ({ className, ...props }, ref) => (33 <div34 ref={ref}35 className={cn("text-sm leading-none font-semibold tracking-tight", className)}36 {...props}37 />38 ),39 ),40);41CardTitle.displayName = "CardTitle";4243const CardDescription = React.memo(44 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(45 ({ className, ...props }, ref) => (46 <div ref={ref} className={cn("text-foreground-muted text-xs", className)} {...props} />47 ),48 ),49);50CardDescription.displayName = "CardDescription";5152const CardContent = React.memo(53 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(54 ({ className, ...props }, ref) => (55 <div ref={ref} className={cn("p-4 pt-0", className)} {...props} />56 ),57 ),58);59CardContent.displayName = "CardContent";6061const CardFooter = React.memo(62 React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(63 ({ className, ...props }, ref) => (64 <div65 ref={ref}66 className={cn("border-border/60 flex items-center border-t p-4 pt-0", className)}67 {...props}68 />69 ),70 ),71);72CardFooter.displayName = "CardFooter";7374export { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter };
More from blacksite
All 25 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| App headerapp-header | blacksite | Components | Free | no deps | |
| Badgebadge | blacksite | Components | Free | no deps | |
| Bar chartbar-chart | blacksite | Components | Free | no deps | |
| Buttonbutton | blacksite | Components | Free | no deps | |
| Chart tooltipchart-tooltip | blacksite | Components | Free | no deps | |
| Data listdata-list | blacksite | Components | Free | no deps | |
| Gantt timelinegantt-timeline | blacksite | Components | Free | no deps | |
| Inputinput | blacksite | Components | Free | no deps |
