Skip to Content

kbd

ui

Displays a keyboard shortcut or key combination.

Use cases

  • Keyboard shortcut display
  • Hotkey indicators
  • Documentation for keyboard interactions

Features

  • Styled keyboard key appearance
  • Composable for key combinations

Source Code

View the full component source code below.

import { cn } from '@/lib/utils'

function Kbd({ className, ...props }: React.ComponentProps<"kbd">) {
  return (
    <kbd
      data-slot="kbd"
      className={cn(
        "bg-muted text-muted-foreground in-data-[slot=tooltip-content]:bg-background/20 in-data-[slot=tooltip-content]:text-background dark:in-data-[slot=tooltip-content]:bg-background/10 pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none [&_svg:not([class*='size-'])]:size-3",
        className
      )}
      {...props}
    />
  )
}

function KbdGroup({ className, ...props }: React.ComponentProps<"div">) {
  return (
    <kbd
      data-slot="kbd-group"
      className={cn("inline-flex items-center gap-1", className)}
      {...props}
    />
  )
}

export { Kbd, KbdGroup }

Installation

npx shadcn@latest add https://registry.mukoko.com/api/v1/ui/kbd

API

Fetch this component's metadata and source code from the registry API.

GET/api/v1/ui/kbd

Source

components/ui/kbd.tsx