← All packages

@lacspace/hotkeys

v1.0.2React Kit0 deps

Ergonomic keyboard shortcuts for React — combos (mod+k), key sequences (g then d), scopes, and pretty display formatting (⌘K). SSR-safe, respects form fields, zero-dependency, fully typed.

npm i @lacspace/hotkeys

Usage

hotkeys.ts
import { useState } from "react";
import { useHotkeys, formatHotkey } from "@lacspace/hotkeys";

function App() {
  const [open, setOpen] = useState(false);

  // ⌘K on mac, Ctrl+K elsewhere. preventDefault is on by default.
  useHotkeys("mod+k", () => setOpen((v) => !v));

  return (
    <>
      <button onClick={() => setOpen(true)}>
        Search <kbd>{formatHotkey("mod+k")}</kbd>
      </button>
      {open && <CommandPalette onClose={() => setOpen(false)} />}
    </>
  );
}

Exports 10

disableScopeenableScopeformatHotkeyisMacisScopeActivematchesHotkeyparseHotkeytoggleScopeuseHotkeysuseHotkeysScopes

Keywords

reacthotkeyskeyboard-shortcutsusehotkeyskeybindingsshortcuts

More in React Kit