PHPackages                             mhdrefdi-ptr/filament-freeze-action-table - 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. mhdrefdi-ptr/filament-freeze-action-table

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

mhdrefdi-ptr/filament-freeze-action-table
=========================================

A Filament package that keeps table action columns fixed (frozen) during horizontal scrolling, ensuring actions remain visible and easily accessible.

v1.0.0(4mo ago)00MITPHP

Since Mar 18Pushed 4mo agoCompare

[ Source](https://github.com/mhdrefdi-ptr/filament-freeze-action-table)[ Packagist](https://packagist.org/packages/mhdrefdi-ptr/filament-freeze-action-table)[ RSS](/packages/mhdrefdi-ptr-filament-freeze-action-table/feed)WikiDiscussions main Synced 2d ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

Filament Freeze Action Table
============================

[](#filament-freeze-action-table)

Keep Filament table action columns sticky on the right during horizontal scrolling.

Supports Filament `^4.0`.

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

[](#installation)

```
composer require mhdrefdi-ptr/filament-freeze-action-table
php artisan filament:assets
```

Quick Start (Recommended)
-------------------------

[](#quick-start-recommended)

Register the plugin in your panel provider:

```
use Filament\Panel;
use Mhdrefdi\FilamentFreezeActionTable\FilamentFreezeActionTablePlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        ->plugin(
            FilamentFreezeActionTablePlugin::make()
                ->enabledByDefault(true)
        );
}
```

Plugin Configuration
--------------------

[](#plugin-configuration)

Available fluent methods:

- `enabledByDefault(bool $condition = true)`
- `zIndexBody(int $value)`
- `zIndexHeader(int $value)`
- `shadowEnabled(bool $condition = true)`
- `shadowLight(string $value)`
- `shadowDark(string $value)`
- `darkHoverMixPercent(int $value)`

Example:

```
->plugin(
    FilamentFreezeActionTablePlugin::make()
        ->enabledByDefault(true)
        ->zIndexBody(15)
        ->zIndexHeader(16)
        ->shadowEnabled(true)
        ->darkHoverMixPercent(5)
)
```

### Multi-panel behavior

[](#multi-panel-behavior)

- `Table::configureUsing()` is guarded per panel ID (no duplicate registrations).
- Defaults are applied only when the current panel matches that plugin's panel.

Per-table Override
------------------

[](#per-table-override)

```
use Filament\Tables\Table;

public static function table(Table $table): Table
{
    return $table
        ->freezeActionColumn(false); // disable for this table
}
```

Enable explicitly:

```
return $table->freezeActionColumn(true);
```

Optional Config File
--------------------

[](#optional-config-file)

If you prefer config-file driven setup:

```
php artisan vendor:publish --tag=filament-freeze-action-table-config
```

Available keys in `config/filament-freeze-action-table.php`:

- `enabled_by_default`
- `z_index_body`
- `z_index_header`
- `shadow_enabled`
- `shadow_light`
- `shadow_dark`
- `dark_hover_mix_percent`

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

[](#how-it-works)

- Frontend behavior is loaded via Filament assets (`FilamentAsset::register`), not inline render hooks.
- Action column is detected from action triggers in the row.
- Shadow appears only when horizontal overflow exists.

Testing
-------

[](#testing)

Browser spec:

- `tests/browser/freeze-action-column.spec.ts`

Run:

```
npx playwright install chromium
npx playwright test packages/mhdrefdi-ptr/filament-freeze-action-table/tests/browser/freeze-action-column.spec.ts
```

Optional env URLs:

- `FFT_TEST_URL` (default: `http://127.0.0.1:8000/admin/users`)
- `FFT_TEST_URL_WIDE` (default: `http://127.0.0.1:8000/admin/users-wide`)

Changelog
---------

[](#changelog)

See [CHANGELOG.md](CHANGELOG.md).

###  Health Score

30

—

LowBetter than 61% of packages

Maintenance74

Regular maintenance activity

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

145d ago

Major Versions

v1.0.0 → v4.x-dev2026-03-18

### Community

Maintainers

![](https://www.gravatar.com/avatar/579d1aadf101d6aeec8a109ac63ad75a2b4c65b747ad01cf0e969e8d42429dd3?d=identicon)[mhdrefdi-ptr](/maintainers/mhdrefdi-ptr)

---

Top Contributors

[![MhdRefdi](https://avatars.githubusercontent.com/u/79952534?v=4)](https://github.com/MhdRefdi "MhdRefdi (1 commits)")

### Embed Badge

![Health badge](/badges/mhdrefdi-ptr-filament-freeze-action-table/health.svg)

```
[![Health](https://phpackages.com/badges/mhdrefdi-ptr-filament-freeze-action-table/health.svg)](https://phpackages.com/packages/mhdrefdi-ptr-filament-freeze-action-table)
```

###  Alternatives

[stephenjude/filament-feature-flags

Filament implementation of feature flags and segmentation with Laravel Pennant.

123204.9k1](/packages/stephenjude-filament-feature-flags)[marcelweidum/filament-expiration-notice

Customize the livewire expiration notice

94160.6k6](/packages/marcelweidum-filament-expiration-notice)[backstage/mails

View logged mails and events in a beautiful Filament UI.

16429.7k](/packages/backstage-mails)[crumbls/layup

A visual page builder plugin for Filament 5 — Divi-style grid layouts with extensible widgets.

604.0k2](/packages/crumbls-layup)[eduardoribeirodev/filament-leaflet

Um widget de mapa para FilamentPHP.

2226.5k](/packages/eduardoribeirodev-filament-leaflet)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3915.5k](/packages/rawilk-profile-filament-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
