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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
JoseExposito avatar

JoseExposito/touchegg

0
View on GitHub↗
4,095 stars·184 forks·C++·GPL-3.0·8 views

Touchegg

TouchEGG is a multi-touch gesture recognizer and input bridge for Linux that operates as a background service. It detects gestures on touchpads and touchscreens, mapping swipes, pinches, and taps to specific system actions across different display protocols.

The tool functions as an input device gesture mapper, converting touch patterns into keyboard shortcuts, mouse clicks, or the execution of arbitrary shell commands. It allows for the definition of custom gesture-based triggers to manage window states and navigate virtual desktops.

The system handles input emulation for both keyboard combinations and various mouse button interactions. It also provides mechanisms for configuring gesture behavior through configuration files or a graphical interface.

Features

  • Touchpad Gesture Mappings - Maps multi-touch swipes and pinches on Linux touchpads to custom system actions and keyboard shortcuts.
  • Input Device Gesture Mappers - Converts swipes, pinches, and taps into keyboard shortcuts, mouse clicks, or shell commands.
  • Gesture-to-Command Mappings - Provides configuration-based mapping of multi-finger touchpad gestures to specific shell commands or keyboard shortcuts.
  • Input Event Emulations - Sends synthetic keyboard and mouse events directly to the display server to simulate user interactions.
  • Desktop Interface Customization - Provides a utility for defining custom gesture triggers to automate window management and desktop navigation on Linux.
  • Multi-Touch Gesture Detections - Detects multi-touch geometric patterns from coordinate streams to trigger predefined system actions.
  • Multi-Touch Gesture Systems - Functions as a background service that processes complex multi-finger touch inputs into interaction patterns on Linux.
  • Input Customization - Enables custom input automation by remapping touchpad patterns to system-level shell scripts and commands.
  • Shell Command Execution - Triggers the execution of arbitrary system shell commands and scripts based on recognized touch gestures.
  • Software Mouse Click Emulations - Simulates various mouse button interactions, including left, right, and middle clicks, triggered by touch gestures.
  • Display Protocol Input Bridges - Provides a gesture recognition layer that operates across different Linux display protocols to emulate user input.
  • Window State Management - Provides the ability to maximize, minimize, close, or tile windows using recognized multi-touch gestures.
  • Desktop Windowing Management - Controls window states and navigates between virtual desktops using a custom multi-touch gesture workflow.
  • Workspace Navigation - Enables navigation between virtual desktops and workspaces through the use of multi-touch gestures.
  • Touch-to-Keyboard Emulation - Translates recognized touch gestures into simulated keyboard shortcuts and key combinations.
  • Trackpad Gesture Configurations - Allows customization of touchpad interaction behaviors and gesture triggers through configuration files or a graphical interface.

Star history

Star history chart for joseexposito/toucheggStar history chart for joseexposito/touchegg

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

Frequently asked questions

What does joseexposito/touchegg do?

TouchEGG is a multi-touch gesture recognizer and input bridge for Linux that operates as a background service. It detects gestures on touchpads and touchscreens, mapping swipes, pinches, and taps to specific system actions across different display protocols.

What are the main features of joseexposito/touchegg?

The main features of joseexposito/touchegg are: Touchpad Gesture Mappings, Input Device Gesture Mappers, Gesture-to-Command Mappings, Input Event Emulations, Desktop Interface Customization, Multi-Touch Gesture Detections, Multi-Touch Gesture Systems, Input Customization.

What are some open-source alternatives to joseexposito/touchegg?

Open-source alternatives to joseexposito/touchegg include: iberianpig/fusuma — Fusuma is a gesture recognition daemon and multitouch input mapper for Linux systems. It operates as a background… bulletmark/libinput-gestures — libinput-gestures is a Linux input event daemon and touchpad gesture mapper that translates libinput events into shell… jordansissel/xdotool — xdotool is a command-line utility for X11 desktop automation that simulates keyboard and mouse input and manages… pwr-solaar/solaar — Solaar is a device management tool and configuration suite for Logitech wireless peripherals on Linux. It serves as an… imbushuo/mac-precision-touchpad — This project is a Windows Precision Touchpad driver and Apple Trackpad HID driver. It functions as an input device… taye/interact.js — interact.js is a JavaScript interaction library used to implement drag and drop, resizing, and multi-touch gestures…

Open-source alternatives to Touchegg

Similar open-source projects, ranked by how many features they share with Touchegg.
  • iberianpig/fusumaiberianpig avatar

    iberianpig/fusuma

    3,889View on GitHub↗

    Fusuma is a gesture recognition daemon and multitouch input mapper for Linux systems. It operates as a background service that monitors raw input devices and translates trackpad swipes, pinches, and rotations into user-defined shell commands and keyboard shortcuts. The system utilizes a modular input framework that allows for device-specific filtering to ensure gestures are only processed from designated touchpads. It features a plugin architecture that enables the integration of external modules for custom gesture configurations and keyboard event emulation. The software covers input automa

    Rubygesturegesture-recognitionlibinput
    View on GitHub↗3,889
  • bulletmark/libinput-gesturesbulletmark avatar

    bulletmark/libinput-gestures

    4,130View on GitHub↗

    libinput-gestures is a Linux input event daemon and touchpad gesture mapper that translates libinput events into shell commands or keyboard shortcuts. It functions as a background process that monitors raw input signals to automate workflows and execute system actions based on a user-defined configuration file. The tool allows for the mapping of multi-finger swipes and hold gestures to specific terminal commands or desktop workspace navigation. It differentiates between actions by filtering for finger counts, swipe directions, and the duration of hold gestures. The system integrates with sys

    Pythongestureslibinputtouchpad
    View on GitHub↗4,130
  • jordansissel/xdotooljordansissel avatar

    jordansissel/xdotool

    3,822View on GitHub↗

    xdotool is a command-line utility for X11 desktop automation that simulates keyboard and mouse input and manages application windows. It functions as a scriptable tool that maps sequential text instructions to low-level library calls to control the X11 graphical environment. The project enables the generation of synthetic keyboard and mouse events to automate interactions with graphical user interfaces. It also acts as a window manager controller, allowing users to programmatically move, resize, focus, and organize application windows and virtual desktops. The tool covers a wide range of cap

    C
    View on GitHub↗3,822
  • pwr-solaar/solaarpwr-Solaar avatar

    pwr-Solaar/Solaar

    8,909View on GitHub↗

    Solaar is a device management tool and configuration suite for Logitech wireless peripherals on Linux. It serves as an input peripheral monitor that tracks battery levels and connection link quality via a system tray application, while providing a receiver manager for pairing and unpairing wireless devices with proprietary USB receivers. The project features an input device automation engine that maps hardware events and mouse gestures to simulated keyboard inputs or system commands. This allows for the creation of custom rules that trigger actions based on device notifications or specific wi

    Python
    View on GitHub↗8,909
  • See all 30 alternatives to Touchegg→