PluginBench
Skill
Pass
Audit score 90

gesture-patterns

owl-listener/designer-skills

Design intuitive touch and pointer gestures—swipe, drag, long-press—with discoverability and accessibility.

What is gesture-patterns?

Expert guidance for designing gesture-based interactions across touch and pointer devices. Use this when building gestural input, including tap, swipe, drag, pinch, and long-press patterns. For platform-specific iOS/Android gestures, refer to platform-conventions instead.

  • Design core gestures: tap, double-tap, long-press, swipe, pinch, rotate, drag, and pull-to-refresh
  • Implement gesture discoverability through visual affordances, hints, and non-gesture alternatives
  • Apply feedback patterns: immediate visual response, progress indication, threshold indicators, and completion confirmation
  • Resolve gesture conflicts: scroll vs swipe, tap vs long-press, pinch vs drag, and system gesture priority
  • Ensure accessibility with non-gesture alternatives, switch control, voice control, and reduced-motion support
  • Apply best practices: platform conventions, simple gestures, undo for destructive actions, one-handed use

How to install gesture-patterns

npx skills add https://github.com/owl-listener/designer-skills --skill gesture-patterns
Claude Code
Cursor
Windsurf
Cline

How to use gesture-patterns

  1. 1.Identify the primary gestures needed for your interaction (tap, swipe, drag, pinch, etc.)
  2. 2.Define gesture thresholds: minimum distance (10-15px), velocity, direction lock, and cancel zones
  3. 3.Pair each gesture with a visible affordance or button alternative for discoverability
  4. 4.Design immediate visual feedback when the gesture starts and progress indication during execution
  5. 5.Test conflict resolution: ensure scroll vs swipe direction-locking and tap vs long-press timing (500ms) work correctly
  6. 6.Verify accessibility: confirm every gesture has a non-gesture alternative and respects reduced-motion preferences
  7. 7.Validate one-handed use and test with actual touch devices

Use cases

Good for
  • Building a mobile app with swipe-to-dismiss or swipe-to-navigate patterns
  • Designing a map or image viewer with pinch-to-zoom and rotate gestures
  • Creating a pull-to-refresh interface with visual feedback and threshold indicators
  • Implementing a reorderable list using long-press to enter reorder mode
  • Designing a touch interface that supports both gesture and button-based alternatives for accessibility
Who it's for
  • Mobile app designers
  • Interaction designers
  • UX engineers building touch interfaces
  • Product teams designing gesture-heavy applications
  • Accessibility-focused design teams

gesture-patterns FAQ

When should I use gesture-patterns vs platform-conventions?

Use gesture-patterns for custom gesture design and interaction logic. Use platform-conventions for OS-standard gestures specific to iOS and Android.

What's the recommended time threshold between tap and long-press?

The typical threshold is 500ms. This allows users to distinguish between a quick tap and an intentional long-press.

How do I handle conflicts between scroll and swipe?

Use direction-locking: after initial movement, lock the gesture to either horizontal (swipe) or vertical (scroll) based on the direction of the first movement.

What accessibility requirements apply to custom gestures?

Every custom gesture must have a non-gesture alternative (button or menu), support switch control and voice control, be documented, and respect reduced-motion preferences.

Should I provide undo for gesture actions?

Yes, especially for destructive actions like delete or dismiss. Provide undo to help users recover from accidental gestures.

Full instructions (SKILL.md)

Source of truth, from owl-listener/designer-skills.


name: gesture-patterns description: Design gesture interactions for touch and pointer — swipe, drag, long-press, and their discoverability. Use when input is gestural. For OS-standard gestures on iOS and Android, use platform-conventions (ui-design).

Gesture Patterns

You are an expert in designing intuitive gesture-based interactions.

What You Do

You design gesture interactions that feel natural and discoverable across touch and pointer devices.

Core Gestures

  • Tap: Select, activate, toggle
  • Double tap: Zoom, like/favorite
  • Long press: Context menu, reorder mode, preview
  • Swipe: Navigate, dismiss, reveal actions
  • Pinch: Zoom in/out
  • Rotate: Rotate content (maps, images)
  • Drag: Move, reorder, adjust values
  • Pull: Refresh content (pull-to-refresh)

Gesture Design Rules

Discoverability

  • Pair gestures with visible affordances
  • Provide visual hints on first use
  • Always have a non-gesture alternative (button/menu)

Feedback

  • Immediate visual response when gesture starts
  • Progress indication during gesture
  • Threshold indicators (snap points, rubber-banding)
  • Completion confirmation

Thresholds

  • Minimum distance before gesture activates (10-15px)
  • Velocity thresholds for flick/swipe
  • Direction lock (horizontal vs vertical)
  • Cancel zone (return to start to abort)

Conflict Resolution

  • Scroll vs swipe: direction lock after initial movement
  • Tap vs long press: time threshold (500ms typical)
  • Pinch vs drag: number of touch points
  • System gestures take priority (back swipe, notification pull)

Accessibility

  • Every gesture must have a non-gesture alternative
  • Support switch control and voice control
  • Custom gestures should be documented
  • Respect reduced-motion preferences for gesture animations

Best Practices

  • Follow platform conventions
  • Keep gestures simple (one or two fingers)
  • Provide undo for destructive gesture actions
  • Test with one-handed use
  • Don't require precision timing