Keyboard Shortcut

Utility

Keyboard shortcut key display.

Preview

+KCtrl+S+Shift+P

Usage

example.jsx
import { KeyboardShortcut } from "@/components/ui/keyboard-shortcut";

export default function Example() {
  return <KeyboardShortcut />;
}

Source Code

Copy this file into components/ui/keyboard-shortcut.jsx in your project.

keyboard-shortcut.jsx
import { forwardRef } from "react";
import { cn } from "@/lib/utils";

const KeyboardShortcut = forwardRef(({ className, keys = [], ...props }, ref) => (
  <span ref={ref} className={cn("inline-flex items-center gap-0.5", className)} {...props}>
    {keys.map((k, i) => (
      <span key={i}>
        <kbd className="inline-flex h-5 min-w-[20px] items-center justify-center rounded border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground">{k}</kbd>
        {i < keys.length - 1 && <span className="mx-0.5 text-xs text-muted-foreground">+</span>}
      </span>
    ))}
  </span>
));
KeyboardShortcut.displayName = "KeyboardShortcut";

export { KeyboardShortcut };

Quick Install

Make sure you have the cn() utility set up. It requires clsx and tailwind-merge.

npm install clsx tailwind-merge