PHPackages                             jeffersongoncalves/filament-help-desk - 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. jeffersongoncalves/filament-help-desk

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

jeffersongoncalves/filament-help-desk
=====================================

Filament plugins for jeffersongoncalves/laravel-help-desk — User, Operator, and Admin panels for ticket management.

v3.0.10(3mo ago)69923MITPHPPHP ^8.2CI failing

Since Feb 4Pushed 3d ago1 watchersCompare

[ Source](https://github.com/jeffersongoncalves/filament-help-desk)[ Packagist](https://packagist.org/packages/jeffersongoncalves/filament-help-desk)[ Docs](https://github.com/jeffersongoncalves/filament-help-desk)[ GitHub Sponsors](https://github.com/jeffersongoncalves)[ RSS](/packages/jeffersongoncalves-filament-help-desk/feed)WikiDiscussions 3.x Synced 3w ago

READMEChangelog (10)Dependencies (9)Versions (44)Used By (3)

[![Filament Help Desk](https://raw.githubusercontent.com/jeffersongoncalves/filament-help-desk/3.x/art/jeffersongoncalves-filament-help-desk.png)](https://raw.githubusercontent.com/jeffersongoncalves/filament-help-desk/3.x/art/jeffersongoncalves-filament-help-desk.png)

Filament Help Desk
==================

[](#filament-help-desk)

[![Latest Version on Packagist](https://camo.githubusercontent.com/6ce49b5e71d1b894bf3763d4482b21d6a079699709b6049b92a3a9bdcbe3ee46/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6a6566666572736f6e676f6e63616c7665732f66696c616d656e742d68656c702d6465736b2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jeffersongoncalves/filament-help-desk)[![GitHub Tests Action Status](https://camo.githubusercontent.com/a0dbec74723c099b700761e4c93e7ba588d2b6655237baaf75a315a5c40a67bb/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6a6566666572736f6e676f6e63616c7665732f66696c616d656e742d68656c702d6465736b2f74657374732e796d6c3f6272616e63683d332e78266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/jeffersongoncalves/filament-help-desk/actions?query=workflow%3Atests+branch%3A3.x)[![Total Downloads](https://camo.githubusercontent.com/597bf769b31ef86be60531e183e31041500e5c04cd5864b48c2d6fad08f0f088/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6a6566666572736f6e676f6e63616c7665732f66696c616d656e742d68656c702d6465736b2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jeffersongoncalves/filament-help-desk)[![License](https://camo.githubusercontent.com/5396664dd4a2fdf9b33f123fbc40c923a3a91722c3f957ac64737c3b7cd0be23/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6a6566666572736f6e676f6e63616c7665732f66696c616d656e742d68656c702d6465736b2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)

Filament plugins for [jeffersongoncalves/laravel-help-desk](https://github.com/jeffersongoncalves/laravel-help-desk) — providing User, Operator, and Admin panels for ticket management.

Version Compatibility
---------------------

[](#version-compatibility)

Plugin VersionFilamentLaravelPHP1.x^3.0^10 | ^11 | ^12^8.12.x^4.0^11.0^8.23.x^5.0^11.28^8.3Requirements
------------

[](#requirements)

- PHP `^8.3`
- Laravel `^11.28`
- Filament `^5.0`
- [jeffersongoncalves/laravel-help-desk](https://github.com/jeffersongoncalves/laravel-help-desk) `^1.0`

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

[](#installation)

You can install the package via composer:

```
composer require jeffersongoncalves/filament-help-desk:^3.0
```

### Publish config (optional)

[](#publish-config-optional)

```
php artisan vendor:publish --tag="filament-help-desk-config"
```

### Publish views (optional)

[](#publish-views-optional)

```
php artisan vendor:publish --tag="filament-help-desk-views"
```

### Publish translations (optional)

[](#publish-translations-optional)

```
php artisan vendor:publish --tag="filament-help-desk-translations"
```

> **Note:** Make sure you have already installed and configured [jeffersongoncalves/laravel-help-desk](https://github.com/jeffersongoncalves/laravel-help-desk) (migrations, config, etc.) before using this package.

Setup
-----

[](#setup)

### 1. Add traits to your User model

[](#1-add-traits-to-your-user-model)

```
use JeffersonGoncalves\HelpDesk\Concerns\HasTickets;
use JeffersonGoncalves\HelpDesk\Concerns\IsOperator;

class User extends Authenticatable
{
    use HasTickets;
    use IsOperator; // Only needed for users who act as operators/admins
}
```

### 2. Register plugins in your Filament panels

[](#2-register-plugins-in-your-filament-panels)

This package provides **3 independent plugins** that can be registered in any combination across your panels:

#### User Plugin

[](#user-plugin)

For end-users to create and track their tickets.

```
use JeffersonGoncalves\FilamentHelpDesk\FilamentHelpDeskUserPlugin;

class UserPanelProvider extends PanelProvider
{
    public function panel(Panel $panel): Panel
    {
        return $panel
            // ...
            ->plugins([
                FilamentHelpDeskUserPlugin::make(),
            ]);
    }
}
```

**Provides:**

- Ticket creation form (department, category, priority, attachments)
- Ticket listing with status/priority filters
- Ticket detail view with comment timeline and reply form
- Stats widget: open, pending, resolved, total tickets

#### Operator Plugin

[](#operator-plugin)

For support agents to manage and respond to tickets.

```
use JeffersonGoncalves\FilamentHelpDesk\FilamentHelpDeskOperatorPlugin;

class OperatorPanelProvider extends PanelProvider
{
    public function panel(Panel $panel): Panel
    {
        return $panel
            // ...
            ->plugins([
                FilamentHelpDeskOperatorPlugin::make(),
            ]);
    }
}
```

**Provides:**

- Tabbed ticket queue (My Tickets, Unassigned, All)
- Ticket management: change status, priority, assign operators
- Internal notes and canned responses
- Tickets by status chart widget
- Assigned tickets table widget

#### Admin Plugin

[](#admin-plugin)

For administrators to configure the help desk system.

```
use JeffersonGoncalves\FilamentHelpDesk\FilamentHelpDeskAdminPlugin;

class AdminPanelProvider extends PanelProvider
{
    public function panel(Panel $panel): Panel
    {
        return $panel
            // ...
            ->plugins([
                FilamentHelpDeskAdminPlugin::make(),
            ]);
    }
}
```

**Provides:**

- Department CRUD with operator management
- Category CRUD with hierarchical support
- Canned response CRUD
- Email channel configuration
- Full ticket management (all tickets, all statuses)
- Stats overview and priority distribution widgets

> **Tip:** You can combine plugins in a single panel. For example, register both `FilamentHelpDeskAdminPlugin` and `FilamentHelpDeskOperatorPlugin` in your admin panel.

Configuration
-------------

[](#configuration)

The configuration file `config/filament-help-desk.php` allows you to customize:

```
return [
    'user' => [
        'resource' => \JeffersonGoncalves\FilamentHelpDesk\User\Resources\TicketResource::class,
        'widgets' => [
            \JeffersonGoncalves\FilamentHelpDesk\User\Widgets\UserTicketStatsWidget::class,
        ],
        'navigation_group' => 'Support',
        'navigation_icon' => 'heroicon-o-ticket',
        'navigation_sort' => null,
        'slug' => 'tickets',
    ],
    'operator' => [
        'resource' => \JeffersonGoncalves\FilamentHelpDesk\Operator\Resources\TicketResource::class,
        'widgets' => [
            \JeffersonGoncalves\FilamentHelpDesk\Operator\Widgets\TicketsByStatusWidget::class,
            \JeffersonGoncalves\FilamentHelpDesk\Operator\Widgets\AssignedTicketsWidget::class,
        ],
        'navigation_group' => 'Help Desk',
        'navigation_icon' => 'heroicon-o-inbox-stack',
        'slug' => 'tickets',
    ],
    'admin' => [
        'navigation_group' => 'Help Desk',
        'navigation_icon' => 'heroicon-o-cog-6-tooth',
        'resources' => [
            'ticket' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\TicketResource::class,
            'department' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\DepartmentResource::class,
            'category' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\CategoryResource::class,
            'canned_response' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\CannedResponseResource::class,
            'email_channel' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\EmailChannelResource::class,
        ],
        'widgets' => [
            \JeffersonGoncalves\FilamentHelpDesk\Admin\Widgets\TicketsByPriorityWidget::class,
            \JeffersonGoncalves\FilamentHelpDesk\Admin\Widgets\TicketStatsOverviewWidget::class,
        ],
    ],
];
```

### Customizing Resources

[](#customizing-resources)

Override any resource by pointing to your own class in the config:

```
'user' => [
    'resource' => \App\Filament\User\Resources\CustomTicketResource::class,
],
```

Your custom resource can extend the default one:

```
namespace App\Filament\User\Resources;

use JeffersonGoncalves\FilamentHelpDesk\User\Resources\TicketResource as BaseResource;

class CustomTicketResource extends BaseResource
{
    public static function form(Form $form): Form
    {
        return $form->schema([
            ...static::getTicketFormSchema(isUser: true),
            // Add your custom fields
        ]);
    }
}
```

### Customizing Widgets

[](#customizing-widgets)

Each panel registers dashboard widgets that can be customized via the `widgets` config key. You can reorder, remove, or add your own widgets:

```
'admin' => [
    'widgets' => [
        \JeffersonGoncalves\FilamentHelpDesk\Admin\Widgets\TicketStatsOverviewWidget::class,
        // Remove TicketsByPriorityWidget by not including it
        \App\Filament\Widgets\CustomDashboardWidget::class, // Add your own
    ],
],
```

To disable all widgets for a panel, set it to an empty array:

```
'user' => [
    'widgets' => [],
],
```

### Disabling Resources

[](#disabling-resources)

You can disable any resource by removing or commenting out its key in the config file. The navigation item will automatically be hidden for any resource whose config key is not present.

For example, to disable the email channel resource in the admin panel:

```
'admin' => [
    'resources' => [
        'ticket' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\TicketResource::class,
        'department' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\DepartmentResource::class,
        'category' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\CategoryResource::class,
        'canned_response' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\CannedResponseResource::class,
        // 'email_channel' => \JeffersonGoncalves\FilamentHelpDesk\Admin\Resources\EmailChannelResource::class,
    ],
],
```

To disable the entire User or Operator panel resource, set the `resource` key to `null`:

```
'user' => [
    'resource' => null, // Disables the user ticket resource
    // ...
],
'operator' => [
    'resource' => null, // Disables the operator ticket resource
    // ...
],
```

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

[](#translations)

The package includes translations for:

- English (`en`)
- Brazilian Portuguese (`pt_BR`)

To add or modify translations, publish them and edit the files in `resources/lang/vendor/filament-help-desk/`.

Testing
-------

[](#testing)

```
composer test
```

### PHPStan

[](#phpstan)

```
composer analyse
```

### Code Style (Pint)

[](#code-style-pint)

```
composer format
```

Changelog
---------

[](#changelog)

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

License
-------

[](#license)

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

###  Health Score

49

—

FairBetter than 94% of packages

Maintenance91

Actively maintained with recent releases

Popularity19

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 88.6% 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 ~2 days

Recently: every ~10 days

Total

44

Last Release

62d ago

Major Versions

1.2.3 → v2.0.92026-03-16

v2.0.9 → v3.0.102026-03-16

1.2.4 → v2.0.102026-03-16

1.x-dev → 2.x-dev2026-04-26

2.x-dev → 3.x-dev2026-04-26

PHP version history (3 changes)1.0.0PHP ^8.1

v2.0.0PHP ^8.2

v3.0.0PHP ^8.3

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/411493?v=4)[Jefferson Gonçalves](/maintainers/jeffersongoncalves)[@jeffersongoncalves](https://github.com/jeffersongoncalves)

---

Top Contributors

[![jeffersongoncalves](https://avatars.githubusercontent.com/u/411493?v=4)](https://github.com/jeffersongoncalves "jeffersongoncalves (62 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (4 commits)")[![sistem-atc](https://avatars.githubusercontent.com/u/86525959?v=4)](https://github.com/sistem-atc "sistem-atc (4 commits)")

---

Tags

filamentfilament-pluginhelp-desklaravellivewirephpsupport-ticketsticket-managementlaravelsupportfilamenthelp deskticketscustomer-support

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/jeffersongoncalves-filament-help-desk/health.svg)

```
[![Health](https://phpackages.com/badges/jeffersongoncalves-filament-help-desk/health.svg)](https://phpackages.com/packages/jeffersongoncalves-filament-help-desk)
```

###  Alternatives

[ysfkaya/filament-phone-input

A phone input component for Laravel Filament

3141.2M25](/packages/ysfkaya-filament-phone-input)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3913.7k](/packages/rawilk-profile-filament-plugin)[dotswan/filament-map-picker

Easily pick and retrieve geo-coordinates using a map-based interface in your Filament applications.

128173.7k3](/packages/dotswan-filament-map-picker)[stephenjude/filament-feature-flags

Filament implementation of feature flags and segmentation with Laravel Pennant.

122157.7k1](/packages/stephenjude-filament-feature-flags)[creagia/filament-code-field

A Filamentphp input field to edit or view code data.

57301.3k3](/packages/creagia-filament-code-field)[jibaymcs/filament-tour

Bring the power of DriverJs to your Filament panels and start a tour !

12451.0k](/packages/jibaymcs-filament-tour)

PHPackages © 2026

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