jaywcjlove/hotkeys-js

➷ A robust Javascript library for capturing keyboard input. It has no dependencies.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 20 minutes ago
Added to GitGenius on September 9th, 2026
Created on May 18th, 2015
Open Issues & Pull Requests: 159 (+0)
GitHub issues: Enabled
Number of forks: 414
Total Stargazers: 7,124 (+0)
Total Subscribers: 69 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 12.4 hours
Mean response time: 67.2 days
90th percentile: 159.1 days
Tracked items: 24

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 3% of issues opened in the past year have been closed. Three people close 77% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 18
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,046 days
Stale 30+ days: 18
Stale 90+ days: 17

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Demo (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

hotkeys-js is a JavaScript library for capturing keyboard input and binding keyboard shortcuts in the browser with no external dependencies.

The tool solves the problem of handling keyboard events and hotkey bindings in web applications. It provides a straightforward API for registering keyboard shortcuts and responding to key combinations, abstracting away the complexity of raw keyboard event handling across different browsers and key combinations.

The library suits projects that need to implement keyboard shortcuts for user interactions, such as web applications, text editors, or productivity tools. It works well for applications targeting browser environments where keyboard-driven workflows improve usability. Developers should choose this tool when they want a lightweight, dependency-free solution for hotkey management without the overhead of larger frameworks.

The project maintains active development with regular updates and improvements to the codebase. Documentation is comprehensive with examples and API references available on the project homepage. The tool is written in TypeScript, providing type safety for developers using it in TypeScript projects.