Gredich Smooth Scroll

Description

Adds Lenis library for smooth scrolling with a full settings page — no coding required. Unlike headless wrappers, it includes:

Features:
* GSAP/ScrollTrigger integration
* Smooth anchor links with configurable offset
* Automatic nested scroll detection
* Exclude specific elements by ID or class
* Support for both vertical and horizontal scrolling
* Touch device support with adjustable sensitivity
* Easy-to-use settings page

Development

Build assets (JS, CSS) are copied from the lenis npm package.
Source code and full development repository available at:
– Lenis library: https://github.com/darkroomengineering/lenis

Installation

  1. Upload the gredich-smooth-scroll folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to Settings > Gredich Smooth Scroll to configure the plugin

FAQ

How do I exclude an element from smooth scrolling?

There are two ways:

  1. Using data attributes (recommended): Add data-lenis-prevent attribute to any HTML element you want to exclude. For finer control, use:

Attribute
Description

data-lenis-prevent
Prevent all smooth scroll events

data-lenis-prevent-wheel
Prevent wheel events only

data-lenis-prevent-touch
Prevent touch events only

data-lenis-prevent-vertical
Prevent vertical scroll events only

data-lenis-prevent-horizontal
Prevent horizontal scroll events only

  1. Using the settings page: Go to Settings > Gredich Smooth Scroll and add the element’s ID or class to the exclusion list.

What is the difference between ID and class selectors?

  • ID selectors start with # (e.g., #my-element)
  • Class selectors start with . (e.g., .my-class)

Can I use both methods together?

Yes! You can combine data attributes with ID/class exclusions.

How does the plugin handle nested scroll elements?

By default, the plugin automatically detects nested scrollable elements and lets them scroll natively. You can control this behavior from Settings > Gredich Smooth Scroll using the “Allow Nested Scroll” option.

  • Enabled (default): Lenis detects nested scroll containers automatically. Best for most sites.
  • Disabled: Disable only if you experience performance issues and prefer to manually exclude elements using the data attributes or exclusion list above.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Gredich Smooth Scroll” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.0

  • Initial release