Tooltip

Classic inverted hover/focus tip — dark on light, light on dark. Built on Radix Tooltip.

Default

<TooltipProvider>
  <Tooltip>
    <TooltipTrigger asChild>
      <Button variant="outline">Hover me</Button>
    </TooltipTrigger>
    <TooltipContent>Copied to clipboard</TooltipContent>
  </Tooltip>
</TooltipProvider>

All four sides

<TooltipContent side="top">Top</TooltipContent>
<TooltipContent side="right">Right</TooltipContent>
<TooltipContent side="bottom">Bottom</TooltipContent>
<TooltipContent side="left">Left</TooltipContent>

On an icon-only control

<Tooltip>
  <TooltipTrigger asChild>
    <IconButton variant="ghost" aria-label="More info"><Info /></IconButton>
  </TooltipTrigger>
  <TooltipContent>Deploys take ~2 minutes on average</TooltipContent>
</Tooltip>

Props

ComponentNotable props
TooltipProviderdelayDuration (default 300ms — snappier than Radix's 700ms default), skipDelayDuration, disableHoverableContent
Tooltipopen, defaultOpen, onOpenChange, delayDuration (override Provider per-tooltip)
TooltipTriggerasChild — wraps your own Button / IconButton / anchor
TooltipContentside ("top" | "right" | "bottom" | "left"), align, sideOffset (default 6), collisionPadding

Source

packages/react/src/components/tooltip.tsx · adapted from shadcn