awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
ccampbell avatar

ccampbell/mousetrap

0
View on GitHub↗
11,774 stars·957 forks·JavaScript·Apache-2.0·23 viewscraig.is/killing/mice↗

Mousetrap

Mousetrap is a JavaScript keyboard shortcut library used to bind specific key combinations and sequences to custom functions in web applications. It serves as a keyboard event handler that listens to and manages keypress, keydown, and keyup events across a browser window.

The library includes a sequence-based input manager for triggering actions based on a precise series of keys pressed in a specific order. It also provides a custom shortcut recorder to capture user keystrokes for defining and saving personalized shortcuts.

The system supports global binding registration to ensure shortcuts trigger regardless of the active input element. It includes capabilities for bulk shortcut configuration, programmatic event triggering to simulate key presses, and the ability to pause event execution to temporarily disable registered shortcuts.

Features

  • Keyboard Shortcut Managers - Provides a declarative system for registering and managing keyboard event listeners and hotkeys.
  • Ordered Key Sequences - Triggers actions based on a specific series of keys pressed in a precise order.
  • Custom Key Mappings - Implements a system to map keyboard event combinations to specific application functions.
  • Key Sequence Patterns - Triggers actions based on a series of keys pressed in a specific order to create complex shortcut patterns.
  • Sequence-Based Mappings - Implements multi-key shortcuts and professional navigation patterns requiring keys to be pressed in a specific order.
  • Keyboard Shortcut Mappers - Binds custom functions to specific key combinations by listening for standard keyboard events.
  • Global Shortcut Interceptors - Captures keyboard events at the document level to trigger shortcuts regardless of current element focus.
  • Keyboard Event Handlers - Manages the listening and handling of keypress, keydown, and keyup events across the browser window.
  • Sequential Input Tracking - Tracks series of keystrokes over time to trigger actions based on complex, ordered key patterns.
  • Input Customization - Allows users to record and save personalized keyboard shortcuts to customize their experience.
  • Shortcut Recorders - Provides a utility for capturing user keystrokes to define and save personalized keyboard shortcuts.
  • Dynamic Shortcut Registrations - Provides the ability to dynamically add or remove key bindings at runtime through API calls or configuration objects.
  • Keyboard Shortcuts - Simple library for keyboard shortcuts.
  • JavaScript 框架汇总 - Listed in the “JavaScript 框架汇总” section of the Awesome Frontend awesome list.
  • Keyboard Shortcuts - Simple keyboard shortcut handling.

Star history

Star history chart for ccampbell/mousetrapStar history chart for ccampbell/mousetrap

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Mousetrap

These projects share indexed features with Mousetrap. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • jaywcjlove/hotkeys-jsjaywcjlove avatar

    jaywcjlove/hotkeys-js

    7,107View on GitHub↗

    hotkeys-js is a JavaScript keyboard shortcut library and event manager used to map key combinations to callback functions within web applications. It serves as an input shortcut orchestrator that captures and filters keyboard events to execute custom actions. The library distinguishes itself through shortcut scope management, allowing shortcuts to be organized into named groups. These scopes can be toggled to prevent command conflicts across different application states. The system covers keyboard shortcut binding and unbinding, real-time key state querying, and input event filtering to prev

    TypeScriptbrowserhotkeyhotkeys
    View on GitHub↗7,107
  • jamiebuilds/tinykeysjamiebuilds avatar

    jamiebuilds/tinykeys

    4,081View on GitHub↗

    Tinykeys is a lightweight JavaScript utility for mapping keyboard combinations, sequences, and regular expression patterns to specific callback functions. It serves as an input mapping utility that triggers actions based on simultaneous modifier key presses or chronological key sequences. The library distinguishes itself by supporting dynamic key pattern matching through regular expressions and state-based sequence tracking to execute actions after a specific series of presses. It also includes a keyboard event parser that converts human-readable shortcut strings into structured data. These

    TypeScript
    View on GitHub↗4,081
  • mawww/kakounemawww avatar

    mawww/kakoune

    10,938View on GitHub↗

    Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model allows multiple terminal windows to connect to a single editing session, providing a programmable environment for managing source code and text. The editor is distinguished by its selection-first logic, where a text region must be predefined before a command is applied. It leverages regular expressions to manage multiple cursors and perform bulk edits across complex text patterns, and it integrates deeply with the shell by piping selections through external programs and filters.

    C++
    View on GitHub↗10,938
  • nvim-mini/mini.nvimnvim-mini avatar

    nvim-mini/mini.nvim

    9,325View on GitHub↗

    mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation, user interface, and text manipulation tools. It serves as a modular plugin collection, a UI toolkit for creating custom statuslines and notifications, and a package manager for installing and pinning external plugins from Git. The project provides a specialized fuzzy picker framework for filtering files and symbols, an LSP completion engine with interactive snippet expansion, and a dedicated plugin test framework that uses headless editor instances and remote procedure calls

    Lualuamini-nvimneovim
    View on GitHub↗9,325
Compare all 30 related projects→

Frequently asked questions

What does ccampbell/mousetrap do?

Mousetrap is a JavaScript keyboard shortcut library used to bind specific key combinations and sequences to custom functions in web applications. It serves as a keyboard event handler that listens to and manages keypress, keydown, and keyup events across a browser window.

What are the main features of ccampbell/mousetrap?

The main features of ccampbell/mousetrap are: Keyboard Shortcut Managers, Ordered Key Sequences, Custom Key Mappings, Key Sequence Patterns, Sequence-Based Mappings, Keyboard Shortcut Mappers, Global Shortcut Interceptors, Keyboard Event Handlers.

Which projects share features with ccampbell/mousetrap?

Projects with overlapping indexed features include: jaywcjlove/hotkeys-js — hotkeys-js is a JavaScript keyboard shortcut library and event manager used to map key combinations to callback… jamiebuilds/tinykeys — Tinykeys is a lightweight JavaScript utility for mapping keyboard combinations, sequences, and regular expression… mawww/kakoune — Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model… nvim-mini/mini.nvim — mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation,… madrobby/keymaster — Keymaster is a keyboard shortcut library for web applications that provides utilities for intercepting keyboard events… tanstack/virtual.