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
pqrs-org avatar

pqrs-org/Karabiner-Elements

0
View on GitHub↗
22,362 stars·914 forks·C++·Unlicense·20 viewskarabiner-elements.pqrs.org↗

Karabiner Elements

Karabiner-Elements is a system-level utility designed for advanced keyboard and mouse customization. It functions as a background service that intercepts raw hardware input signals at the driver level, allowing for the transformation of key presses and pointer movements before they reach the operating system. By utilizing virtual input device emulation, the software re-injects modified events into the system stream, enabling complex remapping, macro execution, and hardware-specific control.

The project distinguishes itself through a sophisticated state-based logic engine that enables context-aware behavior. Users can define rules that trigger based on the currently active application, specific hardware devices, or persistent system variables. This includes support for arithmetic expression evaluation and timing-based logic, such as executing different commands depending on whether a key is tapped, held, or pressed in rapid succession. The configuration is managed through a structured text-based schema, which can be validated and automated via command-line tools.

Beyond basic remapping, the software provides comprehensive control over peripheral hardware, including the ability to disable built-in keyboards when external devices are connected and to transform mouse motion into scroll events. It also features robust monitoring tools for inspecting raw device signals and system logs to facilitate troubleshooting. The application maintains functionality within secure environments, such as password prompts, by managing the necessary system-level permissions and extensions required for deep input integration.

Features

  • Input Event Interception - Intercepts raw hardware input events at the driver level for low-latency modification.
  • Device-Specific Input Rules - The application restricts input modifications to specific hardware devices, allowing different configurations for internal and external keyboards.
  • Keyboard Input Handlers - Enables advanced keyboard and mouse customization, including complex key remapping, macro creation, and conditional input automation.
  • Context-Aware State Engines - Maintains internal variables and modifier states to enable context-aware remapping.
  • Input Device Emulators - Creates software-based keyboard and mouse devices that inject transformed input events back into the system.
  • Modifier Key Listeners - Transforms specific key presses or combinations into different outputs, including support for simultaneous key chords and device-specific rules.
  • Keyboard Input Automation - Provides a configuration-driven platform for triggering shell commands, application launches, and system functions through custom keyboard shortcuts.
  • Hardware Key Interceptors - Intercepts specialized hardware keys to trigger specific system applications or utilities.
  • Conditional Modification Rules - Restricts key remapping rules to specific contexts, such as when a particular application is active.
  • Secondary Modifier Keys - Creates virtual modifier flags by assigning variables to specific key presses to trigger custom input behaviors.
  • HID Event Processors - Manages virtual input devices to provide granular control over hardware signals, modifier states, and device-specific input behavior.
  • System Utilities - Advanced keyboard remapping and customization utility.
  • Keyboard and Input Utilities - Modern utility for deep keyboard remapping and customization.
  • Notes & Productivity - Keyboard customization for macOS.
  • Multi-Press Input Triggers - Executes different commands based on whether a key is tapped once, held down, or pressed in rapid succession.
  • Keyboard Input Disablers - Automatically deactivates the integrated laptop keyboard whenever a specific external keyboard is detected.
  • Secure Input Session Support - Maintains keyboard functionality within password prompts and secure terminal sessions where standard input interception is typically restricted.
  • Application Focus Monitors - Detects the currently active application to apply context-aware keyboard modification rules automatically.
  • Modifier Key Simulators - Injects specific modifier keys into input sequences to simulate complex key combinations or trigger system-level shortcuts.
  • Input Automation Tools - Enables complex key remapping and input event sequences through a command-line interface.
  • Hold Duration Triggers - Executes specific commands or key events when a key is held down longer than a defined threshold.
  • Application Update Managers - Automates the checking and installation of software updates to ensure access to new features.
  • System Input Permissions - Configures required system-level settings to grant access for monitoring and modifying hardware input events.
  • Input Modification Pipelines - Processes hardware input signals through a sequential chain of rules to apply transformations.
  • Device Management Tools - Allows users to select specific hardware devices for customization and manage their activation state.
  • Event Monitoring Systems - Displays real-time key presses and system events to verify modifications and troubleshoot input behavior.
  • Sticky Modifier Modalities - Transforms a standard key into a sticky modifier that remains active until the next key press.
  • System State Trackers - Exposes internal operating system settings and timestamps as variables to enable context-aware keyboard behavior.
  • Mouse Control Automation - Simulates mouse cursor movement and button clicks through keyboard-based definitions to enable navigation without a physical mouse.
  • Mouse Input Handlers - Provides utilities to invert axes, swap directions, or disable specific mouse and scroll wheel inputs based on device or application conditions.
  • Security Authorization - Manages the necessary system-level permissions and security authorizations required for deep input integration.
  • Input Modification Restrictions - Limits key remapping rules to specific applications, connected devices, or input languages.
  • JSON Configuration Schemas - Uses structured JSON files to define complex remapping rules and device-specific behaviors.
  • Hardware Signal Inspectors - Disables active modifications temporarily to reveal the original signals sent by hardware devices before any remapping occurs.

Star history

Star history chart for pqrs-org/karabiner-elementsStar history chart for pqrs-org/karabiner-elements

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. 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

Open-source alternatives to Karabiner Elements

Similar open-source projects, ranked by how many features they share with Karabiner Elements.
  • tekezo/karabinertekezo avatar

    tekezo/Karabiner

    3,787View on GitHub↗

    Karabiner is a system-level keyboard remapper and input modifier for macOS. It functions as a kernel-level interceptor that modifies raw hardware events before they reach the operating system, utilizing a virtual hardware device to inject synthesized keyboard and mouse actions. The project distinguishes itself as a context-aware input manager, applying modification rules dynamically based on the active application, connected hardware, or current input source. It serves as a keyboard macro engine capable of automating multi-key shortcuts and conditional behaviors. Its broader capabilities inc

    C++
    View on GitHub↗3,787
  • hammerspoon/hammerspoonHammerspoon avatar

    Hammerspoon/hammerspoon

    14,497View on GitHub↗

    Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi

    Objective-Cautomationhammerspoonirc
    View on GitHub↗14,497
  • pqrs-org/karabiner-archivedpqrs-org avatar

    pqrs-org/Karabiner-archived

    3,787View on GitHub↗

    This project is a macOS keyboard remapping utility that intercepts and transforms hardware input events to customize key mappings, mouse behavior, and system automation. It utilizes a kernel-level input interceptor to modify or block raw hardware signals before they reach the operating system, paired with a state-aware rule engine that processes signals through conditional logic based on the active application or hardware. The system includes a human interface device emulator to inject synthesized keyboard and mouse events into macOS and a keyboard macro system for executing shell commands, l

    C++
    View on GitHub↗3,787
  • linearmouse/linearmouselinearmouse avatar

    linearmouse/linearmouse

    6,335View on GitHub↗

    LinearMouse is a macOS system utility that overrides default pointer acceleration and scrolling behaviors for mice and trackpads. It provides tools to remove cursor acceleration for linear movement and decouple scroll directions for individual devices. The project features an input device profiler that allows for unique cursor and scroll configurations based on the connected hardware. It also includes an input remapper to assign mouse buttons and scroll gestures to keyboard shortcuts and system media controls. The utility covers pointer precision adjustment, scroll behavior customization, an

    Swiftaccelerationcursormac
    View on GitHub↗6,335
See all 30 alternatives to Karabiner Elements→

Frequently asked questions

What does pqrs-org/karabiner-elements do?

Karabiner-Elements is a system-level utility designed for advanced keyboard and mouse customization. It functions as a background service that intercepts raw hardware input signals at the driver level, allowing for the transformation of key presses and pointer movements before they reach the operating system. By utilizing virtual input device emulation, the software re-injects modified events into the system stream, enabling complex remapping, macro execution, and…

What are the main features of pqrs-org/karabiner-elements?

The main features of pqrs-org/karabiner-elements are: Input Event Interception, Device-Specific Input Rules, Keyboard Input Handlers, Context-Aware State Engines, Input Device Emulators, Modifier Key Listeners, Keyboard Input Automation, Hardware Key Interceptors.

What are some open-source alternatives to pqrs-org/karabiner-elements?

Open-source alternatives to pqrs-org/karabiner-elements include: tekezo/karabiner — Karabiner is a system-level keyboard remapper and input modifier for macOS. It functions as a kernel-level interceptor… hammerspoon/hammerspoon — Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua… pqrs-org/karabiner-archived — This project is a macOS keyboard remapping utility that intercepts and transforms hardware input events to customize… linearmouse/linearmouse — LinearMouse is a macOS system utility that overrides default pointer acceleration and scrolling behaviors for mice and… jtroo/kanata — Kanata is a cross-platform keymap engine and keyboard firmware emulator that intercepts physical keystrokes to output… kmonad/kmonad — Kmonad is a cross-platform keyboard remapper and advanced key mapping engine that intercepts physical keyboard inputs…