mcpField
T
tanstack-hotkeys

tanstack-hotkeys

github.com/oakossDevelopment20170 installsUpdated 10w ago
Repository

About tanstack-hotkeys

TanStack Hotkeys is a type-safe React keyboard shortcut library for developers building React apps. It combines hotkey hooks, sequence handling, shortcut recording, key-state tracking, and platform-aware display formatting.

Key features

  1. 01Type-safe hotkey hooks
  2. 02Cross-platform Mod key
  3. 03Multi-key sequences
  4. 04Shortcut recording
  5. 05Track held keys and codes
  6. 06Platform-aware shortcut formatting

Use cases

  1. 01Add keyboard shortcuts to a React app
  2. 02Record user-defined shortcuts
  3. 03Detect held modifier keys
  4. 04Implement Vim-style key sequences

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/oakoss/agent-skills --skill tanstack-hotkeys

After installing, type/tanstack-hotkeysin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
formatting-and-display.md
react-hooks.md
sequences-and-recording.md

Details

From the project README

TanStack Hotkeys

Overview

TanStack Hotkeys is a type-safe keyboard shortcuts library for React with template-string bindings, cross-platform Mod key abstraction (Cmd on macOS, Ctrl on Windows/Linux), and SSR-friendly utilities. It provides hooks for single hotkeys, multi-key sequences, shortcut recording, and real-time key state tracking, plus platform-aware display formatting.

When to use: Adding keyboard shortcuts to React apps, recording user-defined hotkeys, detecting held modifier keys, displaying platform-specific shortcut labels, implementing Vim-style key sequences.

When NOT to use: Non-React apps without a wrapper (core package exists but React is the primary target), complex input handling that needs full keymap management (consider a dedicated keymap library).

Quick Reference

PatternAPIKey Points
Single hotkeyuseHotkeyMod abstracts Cmd/Ctrl; auto-prevents default on combos
Multi-key sequenceuseHotkeySequenceVim-style sequences like g g; configurable timeout
Record shortcutsuseHotkeyRecorderUser-defined shortcuts; start/stop/cancel recording
Detect key helduseKeyHoldBoolean for specific key; optimized re-renders
Track all held keysuseHeldKeysArray of currently pressed key names
Track held key codesuseHeldKeyCodesMap of key names to physical event.code values
Global defaultsHotkeysProviderSet default options for all hooks; per-hook overrides apply
Format for displayformatForDisplayPlatform-aware: macOS symbols vs Windows/Linux text
Scope to elementtarget option + refRequires tabIndex on target element for focus
Conditional hotkeysenabled optionDynamically enable/disable without unmounting

Common Mistakes

MistakeCorrect Pattern
Missing tabIndex on scoped target elementAdd tabIndex={-1} (or 0) to elements using target ref for focus
Using Ctrl instead of ModUse Mod for cross-platform; it maps to Cmd (Mac) or Ctrl (Win/Linux)
Assuming hotkeys fire inside inputsignoreInputs defaults to smart detection; set false to force firing
Duplicate hotkey registrations without configSet conflictBehavior: 'replace' to override, or 'error' to catch
Forgetting preventDefault is auto-enabledModifier combos auto-prevent; set preventDefault: false to allow default
Using keyup without requireResetCombine eventType: 'keyup' with requireReset: true to fire once

Delegation

If the tanstack-pacer skill is available, delegate throttling and debouncing tasks to it. TanStack Pacer is useful for rate-limiting hotkey callbacks. Otherwise, recommend: pnpm dlx skills add oakoss/agent-skills -s tanstack-pacer -a claude-code -y

If the tanstack-devtools skill is available, delegate devtools setup to it. Otherwise, recommend: pnpm dlx skills add oakoss/agent-skills -s tanstack-devtools -a claude-code -y

  • Keyboard shortcuts and hotkeys: Use this skill
  • Throttling/debouncing hotkey callbacks: Delegate to tanstack-pacer
  • DevTools integration: Delegate to tanstack-devtools

References

Comments

Markdown supported