PHPackages                             zoltantorok/filament-drag-and-scroll - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. zoltantorok/filament-drag-and-scroll

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

zoltantorok/filament-drag-and-scroll
====================================

Shift + Drag to scroll Filament tables horizontally. Designed for users with basic mice or accessibility needs.

v1.0.3(1mo ago)07MITPHPPHP ^8.1

Since Apr 19Pushed 1mo agoCompare

[ Source](https://github.com/ZoliTorok48/filament-drag-and-scroll)[ Packagist](https://packagist.org/packages/zoltantorok/filament-drag-and-scroll)[ Docs](https://github.com/ZoliTorok48/filament-drag-and-scroll)[ RSS](/packages/zoltantorok-filament-drag-and-scroll/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (4)Dependencies (2)Versions (5)Used By (0)

Filament Drag and Scroll
========================

[](#filament-drag-and-scroll)

Horizontal table scrolling in Filament can be frustrating, especially for users with basic mice that lack a horizontal scroll wheel, trackball users, or anyone working with accessibility needs. This package solves that problem by letting users hold **Shift** and drag to scroll tables horizontally with ease.

Features
--------

[](#features)

- **Shift + Drag to scroll** - Hold Shift and drag any table to scroll horizontally
- **Per-panel configuration** - Enable for specific Filament panels using a simple method call
- **Visual feedback** - Tooltip and cursor changes guide the user
- **13 languages included** - Automatic translation based on your app locale
- **Zero configuration** - Install, enable, and it just works

Requirements
------------

[](#requirements)

- PHP ^8.1
- Laravel ^11.0
- Filament ^5.0

Installation
------------

[](#installation)

```
composer require zoltantorok/filament-drag-and-scroll
```

Usage
-----

[](#usage)

Add `->dragAndScroll()` to your panel provider:

```
use Filament\Panel;
use Filament\PanelProvider;

class AdminPanelProvider extends PanelProvider
{
    public function panel(Panel $panel): Panel
    {
        return $panel
            ->default()
            ->id('admin')
            ->path('admin')
            ->login()
            ->dragAndScroll();
    }
}
```

That's it. Your users can now hold **Shift** and drag to scroll any table horizontally.

### Disabling

[](#disabling)

```
->dragAndScroll(false)
```

Or simply don't call the method on panels where you don't need it.

How It Works
------------

[](#how-it-works)

1. User holds **Shift** - the cursor changes and a tooltip appears
2. User clicks and drags on a table - the table scrolls horizontally
3. User releases **Shift** - drag mode deactivates

The interaction is designed to stay out of the way. It doesn't interfere with normal table usage, text selection, or other Filament features.

Translations
------------

[](#translations)

The package uses Laravel's translation system and automatically detects your app locale. No configuration required.

### Supported Languages

[](#supported-languages)

LanguageCodeEnglish`en`Spanish`es`French`fr`German`de`Italian`it`Portuguese`pt`Dutch`nl`Russian`ru`Chinese`zh`Japanese`ja`Korean`ko`Hungarian`hu`Romanian`ro`### Customizing Translations

[](#customizing-translations)

Publish the translation files to override them:

```
php artisan vendor:publish --tag="filament-drag-and-scroll-views"
```

Or create your own in `resources/lang/vendor/filament-drag-and-scroll/{locale}/messages.php`:

```
