Kbd
Used to display textual user input from keyboard.
⌘⇧⌥⌃Ctrl+B
import { Kbd, KbdGroup } from "~/components/ui/kbd";
export default function KbdDemo() { return ( <div class="flex flex-col items-center gap-4"> <KbdGroup> <Kbd>⌘</Kbd> <Kbd>⇧</Kbd> <Kbd>⌥</Kbd> <Kbd>⌃</Kbd> </KbdGroup> <KbdGroup> <Kbd>Ctrl</Kbd> <span>+</span> <Kbd>B</Kbd> </KbdGroup> </div> );}Installation
Usage
import { Kbd } from "~/components/ui/kbd";<Kbd>Ctrl</Kbd>Composition
Use the following composition to build Kbd and KbdGroup:
KbdKbdGroup├── Kbd└── KbdGroup
Use the KbdGroup component to group keyboard keys together.
Use Ctrl + BCtrl + K to open the command palette
import { Kbd, KbdGroup } from "~/components/ui/kbd";
export default function KbdGroupExample() { return ( <div class="flex flex-col items-center gap-4"> <p class="text-muted-foreground text-sm"> Use{" "} <KbdGroup> <Kbd>Ctrl + B</Kbd> <Kbd>Ctrl + K</Kbd> </KbdGroup>{" "} to open the command palette </p> </div> );}Button
Use the Kbd component inside a Button component to display a keyboard key inside a button.
import { Button } from "~/components/ui/button";import { Kbd } from "~/components/ui/kbd";
export default function KbdButton() { return ( <Button variant="outline"> Accept{" "} <Kbd class="translate-x-0.5" data-icon="inline-end"> ⏎ </Kbd> </Button> );}Tooltip
You can use the Kbd component inside a Tooltip component to display a tooltip with a keyboard key.
import { Button } from "~/components/ui/button";import { ButtonGroup } from "~/components/ui/button-group";import { Kbd, KbdGroup } from "~/components/ui/kbd";import { Tooltip, TooltipContent, TooltipTrigger } from "~/components/ui/tooltip";
export default function KbdTooltip() { return ( <div class="flex flex-wrap gap-4"> <ButtonGroup> <Tooltip> <TooltipTrigger as={Button} variant="outline"> Save </TooltipTrigger> <TooltipContent> Save Changes <Kbd>S</Kbd> </TooltipContent> </Tooltip> <Tooltip> <TooltipTrigger as={Button} variant="outline"> Print </TooltipTrigger> <TooltipContent> Print Document{" "} <KbdGroup> <Kbd>Ctrl</Kbd> <Kbd>P</Kbd> </KbdGroup> </TooltipContent> </Tooltip> </ButtonGroup> </div> );}Input Group
You can use the Kbd component inside a InputGroupAddon component to display a keyboard key inside an input group.
⌘K
import { SearchIcon } from "lucide-solid";import { InputGroup, InputGroupAddon, InputGroupInput } from "~/components/ui/input-group";import { Kbd } from "~/components/ui/kbd";
export default function KbdInputGroup() { return ( <div class="flex w-full max-w-xs flex-col gap-6"> <InputGroup> <InputGroupInput placeholder="Search..." /> <InputGroupAddon> <SearchIcon /> </InputGroupAddon> <InputGroupAddon align="inline-end"> <Kbd>⌘</Kbd> <Kbd>K</Kbd> </InputGroupAddon> </InputGroup> </div> );}API Reference
Kbd
Use the Kbd component to display a keyboard key.
<Kbd>Ctrl</Kbd>KbdGroup
Use the KbdGroup component to group Kbd components together.
<KbdGroup> <Kbd>Ctrl</Kbd> <Kbd>B</Kbd></KbdGroup>