# Hammerspoon/hammerspoon

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/hammerspoon-hammerspoon).**

14,497 stars · 666 forks · Objective-C · mit

## Links

- GitHub: https://github.com/Hammerspoon/hammerspoon
- Homepage: http://www.hammerspoon.org
- awesome-repositories: https://awesome-repositories.com/repository/hammerspoon-hammerspoon.md

## Topics

`automation` `hammerspoon` `irc` `lua` `macos` `mjolnir` `objective-c` `osx`

## Description

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 window layouts via grid-based positioning, and responding to changes in network status, battery levels, or display configurations. Its modular extension system supports the loading of self-contained units of functionality, enabling users to tailor the environment to specific workflows.

Beyond core automation, the platform provides a comprehensive suite of capabilities for network integration, media and hardware control, and data persistence. It includes tools for managing audio devices, interacting with professional control panels, rendering custom graphical overlays, and executing shell commands or system scripts. The environment also supports complex window management, including spatial navigation and tabbed grouping, alongside monitoring utilities for system hardware and diagnostic logging.

The project provides a command-line interface for managing configurations and includes built-in documentation servers to assist with script development.

## Tags

### Development Tools & Productivity

- [Input Automation Tools](https://awesome-repositories.com/f/development-tools-productivity/input-automation-tools.md) — Intercepts and modifies system-wide mouse and keyboard input events for custom automation. ([source](https://www.hammerspoon.org/docs/))
- [Scripting Environments](https://awesome-repositories.com/f/development-tools-productivity/scripting-environments.md) — Executes scripts that interact with native accessibility APIs, system notifications, and hardware interfaces.
- [Window Managers](https://awesome-repositories.com/f/development-tools-productivity/window-managers.md) — Provides grid-based window management and automated layout positioning for desktop applications. ([source](https://www.hammerspoon.org/docs/hs.layout.html))
- [Keyboard Input Automation](https://awesome-repositories.com/f/development-tools-productivity/input-pointer-automation/keyboard-automation/keyboard-input-automation.md) — Intercepts and modifies keyboard and mouse input to create custom shortcuts and macros.
- [Modular Library Extensions](https://awesome-repositories.com/f/development-tools-productivity/modular-library-extensions.md) — Supports loading self-contained modular extensions to tailor functionality to specific workflows. ([source](https://www.hammerspoon.org/docs/hs.html))
- [Application Scripting APIs](https://awesome-repositories.com/f/development-tools-productivity/open-source-software/modular-cad-platforms/python-scripting-engines/application-scripting-apis.md) — Automates interactions between applications by manipulating UI elements and accessibility objects.
- [Media Controllers](https://awesome-repositories.com/f/development-tools-productivity/command-line-interface-controllers/media-controllers.md) — Manages system audio, media playback, and external hardware devices through programmable interfaces.
- [Mouse Control Automation](https://awesome-repositories.com/f/development-tools-productivity/input-pointer-automation/mouse-automation/mouse-control-automation.md) — Provides programmatic control over mouse cursor movement and positioning. ([source](https://www.hammerspoon.org/docs/hs.mouse.html))
- [Plugin Lifecycle Management](https://awesome-repositories.com/f/development-tools-productivity/plugin-lifecycle-management.md) — Provides a framework for loading, configuring, and managing the lifecycle of modular automation extensions. ([source](https://www.hammerspoon.org/docs/hs.spoons.html))
- [Task Scheduling](https://awesome-repositories.com/f/development-tools-productivity/task-scheduling.md) — Automates the execution of functions at fixed intervals or based on conditional predicates. ([source](https://www.hammerspoon.org/docs/hs.timer.html))
- [Application Lifecycle Managers](https://awesome-repositories.com/f/development-tools-productivity/application-identifiers/application-lifecycle-managers.md) — Locates and manages running applications by process ID or bundle identifier to control their lifecycle. ([source](https://www.hammerspoon.org/docs/hs.application.html))
- [Window Visualizers](https://awesome-repositories.com/f/development-tools-productivity/macos-utilities/native-window-contexts/native-windowing/window-visualizers.md) — Displays a grid of active application windows to allow quick selection and navigation. ([source](https://www.hammerspoon.org/docs/hs.expose.html))
- [Shell Command Utilities](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/terminal-cli-enhancements/shell-terminal-utilities/development-maintenance-utilities/shell-development-tools/shell-command-utilities.md) — Runs system shell commands and captures output for use within automation scripts. ([source](https://www.hammerspoon.org/docs/hs.html))
- [Interactive Resizers](https://awesome-repositories.com/f/development-tools-productivity/window-managers/interactive-window-manipulation/interactive-resizers.md) — Launches a modal interface for visually adjusting window dimensions and positions using keyboard shortcuts. ([source](https://www.hammerspoon.org/docs/hs.grid.html))
- [Application Identifiers](https://awesome-repositories.com/f/development-tools-productivity/application-identifiers.md) — Identifies running applications by name or window title patterns. ([source](https://www.hammerspoon.org/docs/hs.appfinder.html))
- [Automation Shortcuts](https://awesome-repositories.com/f/development-tools-productivity/automation-shortcuts.md) — Triggers system shortcuts by name to perform automated tasks or workflows on the desktop. ([source](https://www.hammerspoon.org/docs/hs.shortcuts.html))
- [Clipboard Change Watchers](https://awesome-repositories.com/f/development-tools-productivity/clipboard-management/clipboard-managers/clipboard-change-watchers.md) — Triggers custom functions whenever the system clipboard contents are updated. ([source](https://www.hammerspoon.org/docs/hs.pasteboard.html))
- [Clipboard Writers](https://awesome-repositories.com/f/development-tools-productivity/clipboard-management/system-clipboard-access/clipboard-writers.md) — Updates the system clipboard with diverse data types for cross-application use. ([source](https://www.hammerspoon.org/docs/hs.pasteboard.html))
- [Input Source Switchers](https://awesome-repositories.com/f/development-tools-productivity/input-pointer-automation/keyboard-automation/keyboard-input-automation/input-source-switchers.md) — Enables programmatic switching of system keyboard layouts and input methods. ([source](https://www.hammerspoon.org/docs/hs.keycodes.html))
- [Modal Input Systems](https://awesome-repositories.com/f/development-tools-productivity/modal-input-systems.md) — Provides mechanisms to define temporary keyboard modes that intercept specific key combinations for custom automation workflows. ([source](https://www.hammerspoon.org/docs/hs.hotkey.modal.html))
- [Process Execution Utilities](https://awesome-repositories.com/f/development-tools-productivity/process-execution-utilities.md) — Executes system binaries with custom arguments and captures output streams for integration into automation scripts. ([source](https://www.hammerspoon.org/docs/hs.task.html))
- [Remote Panel Controllers](https://awesome-repositories.com/f/development-tools-productivity/remote-panel-controllers.md) — Synchronizes software logic with the physical layout of professional control panels. ([source](https://www.hammerspoon.org/docs/hs.tangent.html))
- [URL Scheme Handlers](https://awesome-repositories.com/f/development-tools-productivity/url-scheme-handlers.md) — Registers callbacks to execute scripts when custom URL schemes or application events are triggered. ([source](https://www.hammerspoon.org/docs/hs.urlevent.html))
- [URL Scheme Handlers](https://awesome-repositories.com/f/development-tools-productivity/url-scheme-handlers/url-scheme-handlers.md) — Allows for the programmatic management of default URL scheme handlers. ([source](https://www.hammerspoon.org/docs/hs.urlevent.html))
- [Tabbed Window Groupers](https://awesome-repositories.com/f/development-tools-productivity/window-managers/tabbed-window-organization/tabbed-window-groupers.md) — Consolidates open windows of a specific application into a single tabbed interface. ([source](https://www.hammerspoon.org/docs/hs.tabs.html))

### Operating Systems & Systems Programming

- [Desktop Automation](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-automation.md) — Provides a programmable automation engine for controlling system windows, hardware, and OS events.
- [Window Management Utilities](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-environments-ui/window-management-utilities.md) — Enables programmatic positioning, resizing, and organization of application windows using custom grid layouts and keyboard shortcuts.
- [Input Event Interceptors](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/input-event-interception/input-event-interceptors.md) — Intercepts keyboard and mouse events in real-time to allow for custom input remapping and automation. ([source](https://www.hammerspoon.org/docs/hs.eventtap.html))
- [Audio Volume APIs](https://awesome-repositories.com/f/operating-systems-systems-programming/audio-volume-apis.md) — Integrates system audio volume control into automation workflows. ([source](https://www.hammerspoon.org/docs/hs.deezer.html))
- [Spatial Window Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/window-management-systems/spatial-window-managers.md) — Provides spatial window management capabilities to organize and navigate application windows on the desktop. ([source](https://www.hammerspoon.org/docs/hs.window.html))
- [Process Lifecycle Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-core-internals/process-and-memory-management/memory-management/process-lifecycle-orchestrators/process-lifecycle-managers.md) — Runs automation logic within a persistent host process that manages lifecycle events.
- [Power State Controllers](https://awesome-repositories.com/f/operating-systems-systems-programming/power-management/power-state-controllers.md) — Provides programmatic control over system power states. ([source](https://www.hammerspoon.org/docs/hs.caffeinate.html))
- [Space Change Monitors](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/window-management-systems/cross-platform-windowing-abstractions/cross-space-registries/space-change-monitors.md) — Provides event-driven hooks to trigger automation when the user switches between virtual desktop spaces. ([source](https://www.hammerspoon.org/docs/hs.spaces.html))
- [USB Device Connection Watchers](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/peripheral-passthrough/usb-passthrough/usb-device-connection-watchers.md) — Triggers functions when USB devices are connected or disconnected, providing device identity details. ([source](https://www.hammerspoon.org/docs/hs.usb.watcher.html))
- [Audio Input Selectors](https://awesome-repositories.com/f/operating-systems-systems-programming/input-and-audio-management/audio-input-selectors.md) — Manages and selects system audio input and output sources for routing control. ([source](https://www.hammerspoon.org/docs/hs.audiodevice.datasource.html))

### System Administration & Monitoring

- [System Event Monitors](https://awesome-repositories.com/f/system-administration-monitoring/system-event-monitors.md) — Provides a background service that triggers custom scripts in response to system-level events like network changes, battery status, and hardware connections. ([source](https://www.hammerspoon.org/docs/))
- [System Automation Scripts](https://awesome-repositories.com/f/system-administration-monitoring/system-automation-scripts.md) — Executes AppleScript or JavaScript code to interact with system components via the Open Scripting Architecture. ([source](https://www.hammerspoon.org/docs/hs.osascript.html))
- [System Notifications](https://awesome-repositories.com/f/system-administration-monitoring/system-notifications.md) — Creates and delivers custom alerts to the system notification center, supporting configurable text, images, sounds, and interactive buttons. ([source](https://www.hammerspoon.org/docs/hs.notify.html))
- [Device-Specific Input Rules](https://awesome-repositories.com/f/system-administration-monitoring/virtual-device-drivers/input-device-emulators/device-specific-input-rules.md) — Applies custom input remapping and transformation logic to specific hardware devices. ([source](https://www.hammerspoon.org/docs/hs.razer.html))
- [Display Configuration Managers](https://awesome-repositories.com/f/system-administration-monitoring/display-configuration-managers.md) — Provides granular control over monitor hardware settings like resolution, scaling, and refresh rate. ([source](https://www.hammerspoon.org/docs/hs.screen.html))
- [File System Monitors](https://awesome-repositories.com/f/system-administration-monitoring/file-system-monitors.md) — Monitors file system paths for creation, modification, or deletion events to trigger automated scripts. ([source](https://www.hammerspoon.org/docs/hs.pathwatcher.html))
- [Inter-Process Communication](https://awesome-repositories.com/f/system-administration-monitoring/inter-process-communication.md) — Enables asynchronous data exchange and remote command execution between separate processes via local or remote ports. ([source](https://www.hammerspoon.org/docs/hs.ipc.html))
- [Space Change Monitors](https://awesome-repositories.com/f/system-administration-monitoring/activity-change-notifications/space-change-monitors.md) — Enables automation triggered by changes in the active desktop space. ([source](https://www.hammerspoon.org/docs/hs.spaces.watcher.html))
- [Hardware Connection Watchers](https://awesome-repositories.com/f/system-administration-monitoring/administrative-operations/remote-access-interface-tools/administrative-interfaces/management-interfaces/device-connection-monitoring/hardware-connection-watchers.md) — Detects and handles the connection or disconnection of external control devices. ([source](https://www.hammerspoon.org/docs/hs.streamdeck.html))
- [Scheduled Notification Triggers](https://awesome-repositories.com/f/system-administration-monitoring/alert-notification-systems/scheduled-notification-triggers.md) — Delivers alerts at a specific future time by defining a timestamp or date string for the notification trigger. ([source](https://www.hammerspoon.org/docs/hs.notify.html))
- [Device Power Monitors](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-status-pages/device-power-monitors.md) — Triggers automated functions in response to changes in system battery status. ([source](https://www.hammerspoon.org/docs/hs.battery.watcher.html))
- [Configuration Change Watchers](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-configuration-tools/configuration-change-watchers.md) — Triggers automated callbacks whenever specific system configuration keys are modified. ([source](https://www.hammerspoon.org/docs/hs.settings.html))
- [Media Playback Observers](https://awesome-repositories.com/f/system-administration-monitoring/playback-monitoring/media-playback-observers.md) — Tracks media application status and playback state for automated workflows. ([source](https://www.hammerspoon.org/docs/hs.itunes.html))
- [Location Tracking](https://awesome-repositories.com/f/system-administration-monitoring/real-time-monitoring/location-tracking.md) — Retrieves and monitors geographic location data to enable location-aware system automation. ([source](https://www.hammerspoon.org/docs/hs.location.html))
- [System Configuration Watchers](https://awesome-repositories.com/f/system-administration-monitoring/system-monitoring/system-configuration-watchers.md) — Watches system configuration keys and triggers callbacks upon modification. ([source](https://www.hammerspoon.org/docs/hs.network.configuration.html))

### DevOps & Infrastructure

- [Grid Layout Managers](https://awesome-repositories.com/f/devops-infrastructure/tiling-window-managers/grid-layout-managers.md) — Positions and resizes windows to align with a virtual screen grid for precise layout management. ([source](https://www.hammerspoon.org/docs/hs.grid.html))
- [Workflow Event Triggers](https://awesome-repositories.com/f/devops-infrastructure/workflow-event-triggers.md) — Triggers custom scripts and workflows in response to system-level events like battery or network changes.
- [Automated Action Execution](https://awesome-repositories.com/f/devops-infrastructure/automated-action-execution.md) — Triggers accessibility actions like button clicks or menu interactions to automate application workflows. ([source](https://www.hammerspoon.org/docs/hs.axuielement.html))
- [Task Schedulers](https://awesome-repositories.com/f/devops-infrastructure/automation-orchestration/task-execution-frameworks/task-job-management/task-schedulers.md) — Execute a function after a specified delay or at a specific time of day, with options for recurring intervals. ([source](https://www.hammerspoon.org/docs/hs.timer.html))
- [Event Filter Lifecycle Managers](https://awesome-repositories.com/f/devops-infrastructure/event-filtering-rules/event-filter-lifecycle-managers.md) — Allows for the temporary suspension and reactivation of event monitoring filters. ([source](https://www.hammerspoon.org/docs/hs.window.filter.html))
- [Volume Mount Watchers](https://awesome-repositories.com/f/devops-infrastructure/volume-management/volume-ejectors/volume-mount-watchers.md) — Triggers callbacks whenever disk volumes are mounted, unmounted, or modified. ([source](https://www.hammerspoon.org/docs/hs.fs.volume.html))

### Programming Languages & Runtimes

- [Language Bridges](https://awesome-repositories.com/f/programming-languages-runtimes/language-bridges.md) — Bridges Lua scripting with native Objective-C APIs to enable deep system-level automation. ([source](https://www.hammerspoon.org/docs/LuaSkin/))
- [Runtime Lifecycle Controllers](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/runtimes/desktop-and-native-integration/application-lifecycle-managers/runtime-lifecycle-controllers.md) — Enables automated reloading of configurations and application restarts. ([source](https://www.hammerspoon.org/docs/hs.html))

### Software Engineering & Architecture

- [Event-Driven Hook Systems](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-hook-systems.md) — Registers asynchronous hooks for system-level notifications and hardware events to trigger scripts.
- [Window State Observers](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/state-management/reactive-subscription-systems/observer-patterns/window-state-observers.md) — Retrieves lists of open, visible, minimized, or focused windows to identify and interact with specific application interfaces. ([source](https://www.hammerspoon.org/docs/hs.window.html))
- [Modular Extension Systems](https://awesome-repositories.com/f/software-engineering-architecture/modular-extension-systems.md) — Loads self-contained units of functionality at runtime to extend core capabilities.
- [Communication Bridges](https://awesome-repositories.com/f/software-engineering-architecture/application-frameworks/cross-platform-desktop-frameworks/webview-based/communication-bridges.md) — Enables bidirectional data exchange and automation triggering between webview content and the host system. ([source](https://www.hammerspoon.org/docs/hs.webview.usercontent.html))
- [Application Lifecycle Monitors](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-monitors.md) — Triggers custom logic in response to application launch, termination, or state changes via system-level notifications. ([source](https://www.hammerspoon.org/docs/hs.application.watcher.html))

### User Interface & Experience

- [Accessibility Inspection Tools](https://awesome-repositories.com/f/user-interface-experience/accessibility-inspection-tools.md) — Retrieves accessibility objects to programmatically inspect and interact with system and application components. ([source](https://www.hammerspoon.org/docs/hs.axuielement.html))
- [Accessibility-Based Window Manipulators](https://awesome-repositories.com/f/user-interface-experience/application-window-managers/accessibility-based-window-manipulators.md) — Interacts with the operating system accessibility tree to programmatically inspect and control application windows. ([source](https://www.hammerspoon.org/docs/hs.grid.html))
- [Playback Controllers](https://awesome-repositories.com/f/user-interface-experience/playback-controllers.md) — Provides programmatic control over media playback states like play, pause, and seek. ([source](https://www.hammerspoon.org/docs/hs.deezer.html))
- [Window Lifecycle Controllers](https://awesome-repositories.com/f/user-interface-experience/window-management/window-lifecycle-controllers.md) — Enables programmatic control over window visibility and lifecycle states. ([source](https://www.hammerspoon.org/docs/hs.window.html))
- [Window Rules](https://awesome-repositories.com/f/user-interface-experience/application-window-managers/window-rules.md) — Defines rule-based filters to include or exclude application windows from automation tasks. ([source](https://www.hammerspoon.org/docs/hs.window.filter.html))
- [Window Lifecycle Monitors](https://awesome-repositories.com/f/user-interface-experience/event-handling/window-lifecycle-monitors.md) — Triggers callbacks when a webview window is moved, resized, closed, or changes focus state to enable responsive desktop automation. ([source](https://www.hammerspoon.org/docs/hs.webview.html))
- [Input Event Dispatchers](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/event-handling-architectures/input-event-dispatchers.md) — Dispatches synthetic input events to the operating system to enable complex automation macros. ([source](https://www.hammerspoon.org/docs/hs.eventtap.event.html))
- [Interactive UI Components](https://awesome-repositories.com/f/user-interface-experience/interactive-ui-components.md) — Accesses accessibility APIs to inspect and manipulate UI components of running applications. ([source](https://www.hammerspoon.org/docs/))
- [UI Element Selectors](https://awesome-repositories.com/f/user-interface-experience/ui-element-selectors.md) — Locates and queries UI elements based on structural relationships within the accessibility tree. ([source](https://www.hammerspoon.org/docs/hs.axuielement.html))
- [Window Query Filters](https://awesome-repositories.com/f/user-interface-experience/application-window-managers/window-rules/window-query-filters.md) — Retrieves lists of open windows based on active filter rules and focus history. ([source](https://www.hammerspoon.org/docs/hs.window.filter.html))
- [Event Handling](https://awesome-repositories.com/f/user-interface-experience/event-handling.md) — Registers callbacks to respond to input events from external control hardware like encoders and touch screens. ([source](https://www.hammerspoon.org/docs/hs.streamdeck.html))
- [UI Event Watchers](https://awesome-repositories.com/f/user-interface-experience/event-triggering-systems/ui-event-watchers.md) — Tracks UI interactions and state changes to trigger automated responses. ([source](https://www.hammerspoon.org/docs/hs.uielement.watcher.html))
- [Application Window Managers](https://awesome-repositories.com/f/user-interface-experience/application-window-managers.md) — Provides programmatic control to list, filter, and retrieve application windows. ([source](https://www.hammerspoon.org/docs/hs.application.html))
- [Color Temperature Managers](https://awesome-repositories.com/f/user-interface-experience/color-management-systems/color-temperature-managers.md) — Schedules and manages display color temperature shifts based on time of day. ([source](https://www.hammerspoon.org/docs/hs.redshift.html))
- [Menu Interaction Utilities](https://awesome-repositories.com/f/user-interface-experience/context-menu-customizations/conditional-menu-items/menu-interaction-utilities.md) — Discovers and programmatically selects application menu items to trigger actions. ([source](https://www.hammerspoon.org/docs/hs.application.html))
- [Element Property Inspection](https://awesome-repositories.com/f/user-interface-experience/element-property-inspection.md) — Inspects accessibility objects to retrieve metadata and state information from application interface components. ([source](https://www.hammerspoon.org/docs/hs.axuielement.html))
- [File Pickers](https://awesome-repositories.com/f/user-interface-experience/file-pickers.md) — Invokes native system dialogs to select files or directories from local storage. ([source](https://www.hammerspoon.org/docs/hs.dialog.html))
- [Focus Management](https://awesome-repositories.com/f/user-interface-experience/focus-management.md) — Programmatically identifies the interface component currently holding system or application focus. ([source](https://www.hammerspoon.org/docs/hs.uielement.html))
- [Keyboard Navigation](https://awesome-repositories.com/f/user-interface-experience/keyboard-navigation.md) — Implements keyboard-driven window selection using visual overlays for efficient desktop navigation. ([source](https://www.hammerspoon.org/docs/hs.hints.html))
- [Display Layout Managers](https://awesome-repositories.com/f/user-interface-experience/layout-configurations/display-aware-layout-managers/display-layout-managers.md) — Positions screens within the global coordinate space to organize multi-monitor setups. ([source](https://www.hammerspoon.org/docs/hs.screen.html))
- [Navigation Titles](https://awesome-repositories.com/f/user-interface-experience/navigation-titles.md) — Locates specific windows by searching for exact title matches or dynamic patterns. ([source](https://www.hammerspoon.org/docs/hs.appfinder.html))
- [Screen Capture Tools](https://awesome-repositories.com/f/user-interface-experience/screen-capture-tools.md) — Generates image snapshots of displays or specific screen regions. ([source](https://www.hammerspoon.org/docs/hs.screen.html))
- [Tabbed Window Navigation](https://awesome-repositories.com/f/user-interface-experience/tabbed-navigation/tabbed-window-navigation.md) — Provides components for switching between grouped tabbed windows. ([source](https://www.hammerspoon.org/docs/hs.tabs.html))
- [Visual Overlays](https://awesome-repositories.com/f/user-interface-experience/visual-overlays.md) — Displays graphical objects and visual elements directly on the screen for custom desktop overlays. ([source](https://www.hammerspoon.org/docs/hs.drawing.html))
- [Hardware Control State Managers](https://awesome-repositories.com/f/user-interface-experience/window-management/recent-window-switchers/window-state-controls/hardware-control-state-managers.md) — Allows dynamic visual feedback and state management for connected professional hardware control panels. ([source](https://www.hammerspoon.org/docs/hs.tangent.html))

### Artificial Intelligence & ML

- [Notification Interaction Handlers](https://awesome-repositories.com/f/artificial-intelligence-ml/language-model-orchestration/mcp-server-configurations/notification-callbacks/notification-interaction-handlers.md) — Registers callback functions that execute automatically when a user clicks or interacts with a specific notification. ([source](https://www.hammerspoon.org/docs/hs.notify.html))
- [Audio Hardware Interfaces](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-optimization-and-inference/hardware-and-acceleration/hardware-abstraction-layers/audio-hardware-interfaces.md) — Queries and manages system audio hardware including volume, balance, and input sources. ([source](https://www.hammerspoon.org/docs/hs.audiodevice.html))

### Data & Databases

- [Script-to-Native Type Mappings](https://awesome-repositories.com/f/data-databases/type-mapping-frameworks/script-to-native-type-mappings.md) — Translates data types and function calls between high-level scripting and native system APIs.
- [Configuration Persistence](https://awesome-repositories.com/f/data-databases/configuration-persistence.md) — Persists application settings and configuration states to local storage. ([source](https://www.hammerspoon.org/docs/hs.settings.html))
- [Key Code Mappers](https://awesome-repositories.com/f/data-databases/key-value-stores/key-browsers/key-code-mappers.md) — Facilitates event monitoring and hotkey assignment through key code mapping. ([source](https://www.hammerspoon.org/docs/hs.keycodes.html))
- [Observable State Tables](https://awesome-repositories.com/f/data-databases/key-value-pair-managers/observable-state-tables.md) — Exposes shared data tables that trigger notifications upon modification for external observation. ([source](https://www.hammerspoon.org/docs/hs.watchable.html))

### Hardware & IoT

- [Hardware Hub Callbacks](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/industrial-iot-platforms/connectivity-hubs/hardware-hub-callbacks.md) — Registers callbacks to detect and respond to hardware button presses and state changes. ([source](https://www.hammerspoon.org/docs/hs.razer.html))
- [Peripheral Device Managers](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/device-management/peripheral-device-managers.md) — Supports the discovery and monitoring of specialized hardware peripherals. ([source](https://www.hammerspoon.org/docs/hs.razer.html))
- [Hardware Hub Connectors](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/industrial-iot-platforms/connectivity-hubs/hardware-hub-connectors.md) — Enables interaction with professional control panels via external hub software. ([source](https://www.hammerspoon.org/docs/hs.tangent.html))

### Testing & Quality Assurance

- [User Interaction Simulation](https://awesome-repositories.com/f/testing-quality-assurance/automation-interaction-tools/user-interaction-simulation.md) — Simulates user input by generating synthetic keyboard and mouse events to automate application interactions. ([source](https://www.hammerspoon.org/docs/hs.eventtap.html))

### Graphics & Multimedia

- [Interactive Overlays](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/post-processing-pipelines/multi-pass-rendering-pipelines/real-time-rendering-engines/overlay-rendering-engines/interactive-overlays.md) — Displays interactive dialogs and alerts on the screen to provide visual feedback. ([source](https://www.hammerspoon.org/docs/))
- [Network Bridges](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/lighting-systems/lighting-control-systems/network-bridges.md) — Manages smart lighting zones by sending network commands to hardware bridges. ([source](https://www.hammerspoon.org/docs/hs.milight.html))
- [Custom Shape Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/canvas-vector-graphics/custom-shape-rendering.md) — Enables rendering of custom shapes, text, and images on a drawing surface for desktop overlays. ([source](https://www.hammerspoon.org/docs/hs.canvas.html))

### Networking & Communication

- [MIDI Message Transmitters](https://awesome-repositories.com/f/networking-communication/network-device-discovery/discovery-exclusion-policies/midi-message-transmitters.md) — Transmits standard MIDI messages to control external hardware and virtual instruments. ([source](https://www.hammerspoon.org/docs/hs.midi.html))
- [Audio Device Watchers](https://awesome-repositories.com/f/networking-communication/audio-management-systems/audio-device-watchers.md) — Monitors audio hardware connections and triggers custom scripts upon configuration changes. ([source](https://www.hammerspoon.org/docs/hs.audiodevice.watcher.html))
- [Text Message Automation](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/messaging-notification-systems/messaging-automation/text-message-automation.md) — Transmits text messages to specific recipients using the system messaging service via email address or phone number. ([source](https://www.hammerspoon.org/docs/hs.messages.html))
- [HTTP Request Customization](https://awesome-repositories.com/f/networking-communication/http-request-customization.md) — Executes synchronous and asynchronous HTTP requests with support for custom headers and caching. ([source](https://www.hammerspoon.org/docs/hs.http.html))
- [Network Change Observers](https://awesome-repositories.com/f/networking-communication/network-change-observers.md) — Tracks the connectivity status of a specific network destination and triggers a callback function whenever the connection state changes. ([source](https://www.hammerspoon.org/docs/hs.network.reachability.html))
- [Socket Networking](https://awesome-repositories.com/f/networking-communication/socket-networking.md) — Implements low-level TCP and Unix domain socket management for inter-process and network communication. ([source](https://www.hammerspoon.org/docs/hs.socket.html))
- [Wireless Interface Controllers](https://awesome-repositories.com/f/networking-communication/wireless-networking-tools/wireless-interface-controllers.md) — Allows for the automated management of wireless network connections. ([source](https://www.hammerspoon.org/docs/hs.wifi.html))

### Web Development

- [Accessibility Attribute Modifiers](https://awesome-repositories.com/f/web-development/element-attributes/accessibility-attribute-modifiers.md) — Allows for the programmatic modification of application UI element attributes. ([source](https://www.hammerspoon.org/docs/hs.axuielement.html))
- [Script Injection Engines](https://awesome-repositories.com/f/web-development/webview-rendering-engines/script-injection-engines.md) — Injects custom scripts into webviews to modify page environments and frame structures. ([source](https://www.hammerspoon.org/docs/hs.webview.usercontent.html))
- [Accessibility Event Listeners](https://awesome-repositories.com/f/web-development/application-event-listeners/accessibility-event-listeners.md) — Provides hooks to track and respond to accessibility notifications from application interface elements. ([source](https://www.hammerspoon.org/docs/hs.axuielement.observer.html))
