ui
Hover Card
For sighted users to preview content available behind a link. Displays a card when hovering over the trigger element.
1. Import
Import the hover card components from the design system.
import {
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from "@/design-system/components/ui/hover-card"2. Props
HoverCardContent component props.
| Prop | Type | Default |
|---|---|---|
| side | "top" | "right" | "bottom" | "left" | "bottom" |
| sideOffset | number | 4 |
| align | "start" | "center" | "end" | "center" |
| alignOffset | number | 4 |
| className | string | -- |
3. Usages
Common hover card patterns and configurations.
import {
HoverCard,
HoverCardTrigger,
HoverCardContent,
} from "@/design-system/components/ui/hover-card";
import { Button } from "@/design-system/components/ui/button";
import { Avatar, AvatarFallback, AvatarImage } from "@/design-system/components/ui/avatar";
export function Example() {
return (
<HoverCard>
<HoverCardTrigger asChild>
<Button variant="link">@johndoe</Button>
</HoverCardTrigger>
<HoverCardContent className="w-80">
<div className="flex gap-4">
<Avatar className="size-12">
<AvatarImage src="https://github.com/shadcn.png" />
<AvatarFallback>JD</AvatarFallback>
</Avatar>
<div className="space-y-1">
<h4 className="text-sm font-semibold">@johndoe</h4>
<p className="text-sm text-muted-foreground">
Software Engineer at Company. Building open-source software.
</p>
</div>
</div>
</HoverCardContent>
</HoverCard>
);
}