This Filament plugin is a simple wizard that collects user feedback and forwards it to the chosen email address.
You can install the package via composer:
composer require oriondevelops/filament-feedback
Next ensure you setup a mail service.
You need to register the plugin with your preferred Filament panel providers. This can be done inside of your PanelProvider
, e.g. AdminPanelProvider
.
<?php
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Orion\FilamentFeedback\FeedbackPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FeedbackPlugin::make()
->sendResponsesTo(email: 'oriondevelops@gmail.com')
);
}
}
You can now click on the "Feedback" menu item in your Filament app to see the feedback plugin.
Define who can view the feedback page.
<?php
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Orion\FilamentFeedback\FeedbackPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FeedbackPlugin::make()
->visible(fn() => auth()->user()->can('view feedback page'))
);
}
}
<?php
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Orion\FilamentFeedback\FeedbackPlugin;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FeedbackPlugin::make()
->slug('feedback')
->label('Feedback')
->icon('heroicon-o-face-smile')
->group('Help')
->sort(3),
);
}
}
<?php
namespace App\Providers\Filament;
use Filament\Panel;
use Filament\PanelProvider;
use Orion\FilamentFeedback\FeedbackPlugin;
use App\Filament\Pages\ExtendedFeedbackPage;
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
// ...
->plugin(
FeedbackPlugin::make()
->page(ExtendedFeedbackPage::class),
);
}
}
Please see CONTRIBUTING for details.
Please review Security Policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.