awesome-repositories.comBlog
© 2026 Bringes Technology SRL·VAT RO45896025·hello@bringes.io
MCPBlogSitemapPrivacyTerms
Hammer.js | Awesome Repository
← All repositories

hammerjs/hammer.js

0
View on GitHub↗
24,387 stars·2,595 forks·JavaScript·mit·1 viewhammerjs.github.io↗

Hammer.js

AI search

Explore more awesome repositories

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

Let's find more awesome repositories

Features

  • Touch Gesture Recognition Libraries - Adds support for complex touch interactions like swipes, pinches, and taps to web applications to improve mobile user experience.
  • Touch Gesture Detectors - Detects touch gestures on interface elements by listening for taps, swipes, and pans while configuring specific settings to match user interaction patterns.
  • Input Normalization Utilities - Translates disparate pointer, mouse, and touch events into a unified stream of interaction data for consistent gesture processing.
  • Touch Gesture Libraries - Translates raw pointer and touch inputs into recognizable interaction patterns like swipes and taps.
  • Gesture Recognition Engines - Provides modular logic blocks that evaluate raw input streams against mathematical thresholds to identify distinct user interaction patterns.
  • Mobile Web Interaction Libraries - Builds responsive interfaces that feel natural on touch-enabled devices by capturing and interpreting finger movements on the screen.
  • Cross-Browser Input Abstractions - Provides a unified interface that abstracts away inconsistent touch and mouse event behaviors across different browsers and mobile operating systems.
  • Multi-Touch Tracking Systems - Maintains an internal registry of active touch points to calculate complex multi-finger movements like pinching and rotating.
  • Cross-Device Input Handlers - Standardizes touch and pointer event handling across different browsers and hardware to ensure consistent behavior for all users.
  • Pointer Event Abstractions - Maps complex multi-touch sequences into simplified, high-level interaction events for web-based user interfaces.
  • Custom Interaction Patterns - Creates unique input patterns for web applications that require specific touch sequences beyond standard click or scroll events.
  • Interaction State Machines - Tracks the lifecycle of user interactions through discrete states to determine when a specific gesture pattern is successfully completed.
  • Hammer.js is a library for recognizing touch gestures in web applications. It functions as a unified interface that translates raw pointer, mouse, and touch inputs into a consistent stream of interaction data, allowing developers to detect patterns such as taps, swipes, and pans across different browsers and hardware.

    The library distinguishes itself through a modular architecture that uses configurable logic blocks to evaluate input streams against specific mathematical thresholds. It maintains an internal registry of active touch points to track complex multi-finger movements like pinching and rotating, while a state machine manages the lifecycle of these interactions to determine when a gesture is successfully completed.

    Beyond standard interactions, the library supports custom gesture handling and event delegation through the document object model. It provides a comprehensive set of event handlers that abstract away inconsistent input behaviors, enabling the creation of responsive interfaces that interpret finger movements on touch-enabled devices.