PHPackages                             nhanchaukp/filament-copyactions - 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. [Admin Panels](/categories/admin)
4. /
5. nhanchaukp/filament-copyactions

ActiveLibrary[Admin Panels](/categories/admin)

nhanchaukp/filament-copyactions
===============================

A easy-to-use copy actions for Filament Admin.

v4.0.1(1y ago)1686MITBladePHP ^8.0

Since Apr 3Pushed 1y agoCompare

[ Source](https://github.com/nhanchaukp/filament-copyactions)[ Packagist](https://packagist.org/packages/nhanchaukp/filament-copyactions)[ Docs](https://github.com/nhanchaukp/filament-copyactions)[ RSS](/packages/nhanchaukp-filament-copyactions/feed)WikiDiscussions 4.x Synced 1w ago

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

Filament Copy Actions
=====================

[](#filament-copy-actions)

An easy-to-use copy actions for Filament Admin

- Table action to implement dynamic copy content
- Form action to use with any field
- Page action to implement a dynamic copy button on any page
- Custom copy table column to simply copy text content

> **Note**The copy will only work if the user browser supports [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API). Also, the user must be on a secure context (HTTPS) or localhost.

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

[](#installation)

```
composer require nhanchaukp/filament-copyactions
```

Usage
-----

[](#usage)

### Table Column

[](#table-column)

Display a table text column with a copy button, the column has all features of the [TextColumn](https://filamentphp.com/docs/2.x/tables/columns#text-column) and the copy action sends column content to the clipboard and displays a success tooltip.

```
use NhanChauKP\FilamentCopyActions\Tables\CopyableTextColumn;

CopyableTextColumn::make('brand.name')
    ->copyMessage('Brand copied to clipboard')
    ->searchable()
    ->sortable()
    ->toggleable()
```

The column has an option to display a description above or below the text, by default this description is not copied, if you want to copy the description too, use the `copyWithDescription` method.

#### Success message

[](#success-message)

You can customize the success message with the `copyMessage` method, the default message is `Copied!`.

#### Icon Position and Color

[](#icon-position-and-color)

You can customize the icon with the `icon`, `iconPosition` and `iconColor` methods.

#### Only Display Copy Icon

[](#only-display-copy-icon)

You can display the column hidding the text content and only showing the copy icon:

```
use NhanChauKP\FilamentCopyActions\Tables\CopyableTextColumn;

CopyableTextColumn::make('brand.name')->onlyIcon()
```

### Table Action

[](#table-action)

Display a table action button, you set the content using the `copyable` method. You can customize the button icon/color using the same methods of the [Filament Action](https://filamentphp.com/docs/2.x/tables/actions#setting-a-color).

```
use NhanChauKP\FilamentCopyActions\Tables\Actions\CopyAction;

$table
    ->actions([
        CopyAction::make()->copyable(fn ($record) => $record->name),
    ])
```

#### Success message

[](#success-message-1)

The action will display a copy status, you can customize the success message with the `successNotificationMessage`method or the error message with the `errorNotificationMessage` method.

### Form Action

[](#form-action)

Use the `CopyAction` in your field suffix or prefix if you want to copy a field value. You can customize the button icon/color using the same methods of the [Filament Action](https://filamentphp.com/docs/2.x/tables/actions#setting-a-color).

```
use NhanChauKP\FilamentCopyActions\Forms\Actions\CopyAction;

Forms\Components\TextInput::make('sku')
    ->label('SKU (Stock Keeping Unit)')
    ->suffixAction(CopyAction::make())
    ->required();

Forms\Components\Select::make('shop_brand_id')
    ->relationship('brand', 'name')
    ->prefixAction(CopyAction::make())
    ->searchable();
```

You can use this form action in any filament field, the action will copy the field value to the clipboard by default, but you can customize the value with the `copyable` method.

```
use NhanChauKP\FilamentCopyActions\Forms\Actions\CopyAction;

Forms\Components\Select::make('shop_brand_id')
    ->relationship('brand', 'name')
    ->prefixAction(CopyAction::make()->copyable(fn ($component) => $component->getOptionLabel()))
    ->searchable();
```

#### Copy message

[](#copy-message)

The action will display a copy status, you can customize the success message with the `successNotificationTitle`method or the error message with the `failureNotificationTitle` method.

### Page Action

[](#page-action)

You can add `CopyAction` button to any page in filament, just put the action in the `actions` method of the page. You can customize the button icon/color using the same methods of the [Filament Action](https://filamentphp.com/docs/2.x/tables/actions#setting-a-color).

```
use NhanChauKP\FilamentCopyActions\Pages\Actions\CopyAction;

protected function getActions(): array
{
    return [
        CopyAction::make()->copyable(fn () => $this->record->name),
    ];
}
```

The action will display a copy status, you can customize the success message with the `successNotificationTitle`method or the error message with the `failureNotificationTitle` method.

### CopyAction Tip

[](#copyaction-tip)

By default, CopyAction does not trigger a livewire request, so it only returns the value defined in the copyable method during page rendering.

However, if it is necessary for the copied value to be dynamic at each action trigger, you can use the `action()`method.

```
CopyAction::make()->copyable(fn () => $this->voucher)->action(fn() => $this->generateVoucher()),
```

You can use this technique in actions for form, pages, or tables.

Credits
-------

[](#credits)

- [Danilo Andrade](https://github.com/dmandrade)

###  Health Score

34

—

LowBetter than 74% of packages

Maintenance47

Moderate activity, may be stable

Popularity19

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 82.8% 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 ~154 days

Total

4

Last Release

398d ago

Major Versions

3.x-dev → v4.0.02025-07-04

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/16833818?v=4)[Châu Thái Nhân](/maintainers/nhanchaukp)[@nhanchaukp](https://github.com/nhanchaukp)

---

Top Contributors

[![dmandrade](https://avatars.githubusercontent.com/u/7275012?v=4)](https://github.com/dmandrade "dmandrade (48 commits)")[![nhanchaukp](https://avatars.githubusercontent.com/u/16833818?v=4)](https://github.com/nhanchaukp "nhanchaukp (3 commits)")[![zhanang19](https://avatars.githubusercontent.com/u/19884603?v=4)](https://github.com/zhanang19 "zhanang19 (3 commits)")[![Stichoza](https://avatars.githubusercontent.com/u/1139050?v=4)](https://github.com/Stichoza "Stichoza (2 commits)")[![devmatheus](https://avatars.githubusercontent.com/u/3445672?v=4)](https://github.com/devmatheus "devmatheus (1 commits)")[![williamengbjerg](https://avatars.githubusercontent.com/u/54719?v=4)](https://github.com/williamengbjerg "williamengbjerg (1 commits)")

---

Tags

laravelfilamentfilamentphp

### Embed Badge

![Health badge](/badges/nhanchaukp-filament-copyactions/health.svg)

```
[![Health](https://phpackages.com/badges/nhanchaukp-filament-copyactions/health.svg)](https://phpackages.com/packages/nhanchaukp-filament-copyactions)
```

###  Alternatives

[mradder/filament-logger

Audit logging, activity tracking, exports, alerts, and dashboards for Filament admin panels.

2324.4k1](/packages/mradder-filament-logger)[marcelweidum/filament-passkeys

Use passkeys in your filamentphp app

6758.2k2](/packages/marcelweidum-filament-passkeys)[relaticle/custom-fields

User Defined Custom Fields for Laravel Filament

16461.2k](/packages/relaticle-custom-fields)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

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

A Filament-native cards plugin for organizing pages and resources into a card-based navigation hub.

128.6k](/packages/harvirsidhu-filament-cards)[coringawc/filament-single-record-resource

A Filament plugin that solves the single-record resource pattern — resources that display exactly one record per authenticated user (e.g. 'My Profile', 'My Wallet', 'My Settings') without an index page, and their arbitrarily nested child resources.

121.3k](/packages/coringawc-filament-single-record-resource)

PHPackages © 2026

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