PHPackages                             randomparanoia/filament-column-obfuscation - 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. [Security](/categories/security)
4. /
5. randomparanoia/filament-column-obfuscation

ActiveLibrary[Security](/categories/security)

randomparanoia/filament-column-obfuscation
==========================================

A Filament plugin that allows you to easily obfuscate sensitive data in table columns.

v1.0.0(1y ago)02862MITPHPPHP ^8.1CI failing

Since May 14Pushed 1y ago1 watchersCompare

[ Source](https://github.com/randomparanoia/filament-column-obfuscation)[ Packagist](https://packagist.org/packages/randomparanoia/filament-column-obfuscation)[ Docs](https://github.com/randomparanoia/filament-column-obfuscation)[ GitHub Sponsors]()[ RSS](/packages/randomparanoia-filament-column-obfuscation/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (13)Versions (3)Used By (0)

Filament Column Obfuscation
===========================

[](#filament-column-obfuscation)

[![Latest Version on Packagist](https://camo.githubusercontent.com/d6c94ac6aaf6b976e5b9b7fa2c58f4cab136d31f85cb29b13f38122552e6281d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f72616e646f6d706172616e6f69612f66696c616d656e742d636f6c756d6e2d6f62667573636174696f6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/randomparanoia/filament-column-obfuscation)[![GitHub Tests Action Status](https://camo.githubusercontent.com/01bfca8b9bd14ef2857604900ae084c39153a721e8790508936644de8e85d8a1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f72616e646f6d706172616e6f69612f66696c616d656e742d636f6c756d6e2d6f62667573636174696f6e2f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/randomparanoia/filament-column-obfuscation/actions?query=workflow%3Arun-tests+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/2aec17bb3e9060bdd8220491c14e4f02f3766170d8e1a304be734635f0719ff5/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f72616e646f6d706172616e6f69612f66696c616d656e742d636f6c756d6e2d6f62667573636174696f6e2f6669782d7068702d636f64652d7374796c652d6973737565732e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/randomparanoia/filament-column-obfuscation/actions?query=workflow%3A%22Fix+PHP+code+style+issues%22+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/b664aaadcc6e7bdbd153549c1111375948df6f2eb5f37c3f397c99ae4cb3cd70/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f72616e646f6d706172616e6f69612f66696c616d656e742d636f6c756d6e2d6f62667573636174696f6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/randomparanoia/filament-column-obfuscation)

A Filament plugin that allows you to easily obfuscate sensitive data in table columns, protecting personally identifiable information (PII) and other confidential data in your Filament admin panels.

Features
--------

[](#features)

- Mask sensitive data in Filament table columns (emails, phone numbers, addresses, etc.)
- Customizable obfuscation patterns (show first/last X characters, use custom characters)
- Toggle visibility with click/hover actions
- Simple integration with existing Filament tables

Planned Features
----------------

[](#planned-features)

- Role-based permissions for viewing unobfuscated data

Example
-------

[](#example)

```
use RandomParanoia\FilamentColumnObfuscation\Columns\ObfuscatedColumn;

// In your Filament resource or table
public static function table(Table $table): Table
{
    return $table
        ->columns([
            // Basic usage - masks most characters
            ObfuscatedColumn::make('email')
                ->label('Email Address'),

            // Advanced usage with customization
            ObfuscatedColumn::make('phone_number')
                ->obfucastionPattern('phone')
                ->label('Phone Number')
                ->showFirstChars(3)
                ->showLastChars(2)
                ->obfuscationCharacter('*')
                ->revealOnClick(),
        ]);
}
```

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

[](#installation)

You can install the package via composer:

```
composer require randomparanoia/filament-column-obfuscation
```

Usage
-----

[](#usage)

### Basic Usage

[](#basic-usage)

```
use RandomParanoia\FilamentColumnObfuscation\Columns\ObfuscatedColumn;

ObfuscatedColumn::make('email')
    ->label('Email Address');
```

### Preset Obfuscation Patterns

[](#preset-obfuscation-patterns)

```
use RandomParanoia\FilamentColumnObfuscation\Columns\ObfuscatedColumn;

ObfuscatedColumn::make('email')
    ->obfuscationPattern('email')
    ->label('Email Address');
```

- `default` (default): Obfuscate all characters
- `name`: Show first letter and last letter of the name
- `phone`: Show first 3 digits, last 3 digits, and all digits in between
- `email`: Show first 2 letters, last 2 letters, and all letters in between
- `address`: Show first 5 letters and last 5 letters
- `locality`: Show first 2 letters and last 2 letters

### Customizing Obfuscation

[](#customizing-obfuscation)

```
ObfuscatedColumn::make('credit_card')
    ->showFirstChars(4)             // Show first 4 characters
    ->showLastChars(4)              // Show last 4 characters
    ->obfuscationCharacter('-')     // Use custom character
    ->revealOnClick()               // Allow revealing on click
    ->revealOnHover()               // OR allow revealing on hover
```

### Available Methods

[](#available-methods)

- `showFirstChars(int $count)`: Show the first X characters
- `showLastChars(int $count)`: Show the last X characters
- `obfuscationCharacter(string $char)`: Set the obfuscation character
- `revealOnClick(bool $revealable = true)`: Enable click-to-reveal functionality
- `revealOnHover(bool $revealable = true)`: Enable hover-to-reveal functionality

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Luís Canadas](https://github.com/randomparanoia)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance46

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

416d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/4955240?v=4)[randomparanoia](/maintainers/randomparanoia)[@randomparanoia](https://github.com/randomparanoia)

---

Top Contributors

[![randomparanoia](https://avatars.githubusercontent.com/u/4955240?v=4)](https://github.com/randomparanoia "randomparanoia (20 commits)")

---

Tags

laravelrandomparanoiafilament-column-obfuscation

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/randomparanoia-filament-column-obfuscation/health.svg)

```
[![Health](https://phpackages.com/badges/randomparanoia-filament-column-obfuscation/health.svg)](https://phpackages.com/packages/randomparanoia-filament-column-obfuscation)
```

###  Alternatives

[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)[spatie/laravel-pdf

Create PDFs in Laravel apps

1.0k4.8M47](/packages/spatie-laravel-pdf)[stephenjude/filament-jetstream

A Laravel starter kit built with Filament inspired by Jetstream.

17760.2k3](/packages/stephenjude-filament-jetstream)[stephenjude/filament-debugger

About

104162.2k2](/packages/stephenjude-filament-debugger)[croustibat/filament-jobs-monitor

Background Jobs monitoring like Horizon for all drivers for FilamentPHP

274326.6k8](/packages/croustibat-filament-jobs-monitor)[finity-labs/fin-mail

A powerful email template manager and composer for Filament with dynamic token replacement, template versioning, and inline email sending.

284.5k1](/packages/finity-labs-fin-mail)

PHPackages © 2026

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