RickDBCN / filament-email

Log emails in your Filament project
https://filament-email-demo.marcogermani.it/
MIT License
77 stars 23 forks source link
email email-log filament laravel php

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads Snyk Security License

Log all outgoing emails in your Laravel project within your Filament panel. You can also resend emails with 1-click in case your recipient hasn't received your email.

Version Compatibility

Plugin Filament Laravel PHP
1.x 3.x 10.x 8.x
1.x 3.x 11.x 8.2 | 8.3

[!CAUTION] After update to v1.3.1 or 1.4.0 you need to re-publish and run migrations

php artisan vendor:publish --tag="filament-email-migrations"
php artisan migrate

Installation

You can install the package via composer:

composer require rickdbcn/filament-email

Publish and run the migrations with

php artisan vendor:publish --tag="filament-email-migrations"
php artisan migrate

You can publish the config file with:

php artisan vendor:publish --tag="filament-email-config"

Register the plugin through your panel service provider:

->plugin(\RickDBCN\FilamentEmail\FilamentEmail::make())

Configuration

use RickDBCN\FilamentEmail\Models\Email;
use RickDBCN\FilamentEmail\Filament\Resources\EmailResource;

return [

    'resource' => [
        'class' => EmailResource::class,
        'model' => Email::class,
        'cluster' => null,
        'group' => null,
        'sort' => null,
        'icon' => null,
        'default_sort_column' => 'created_at',
        'default_sort_direction' => 'desc',
        'datetime_format' => 'Y-m-d H:i:s',
        'table_search_fields' => [
            'subject',
            'from',
            'to',
            'cc',
            'bcc',
        ],
    ],

    'keep_email_for_days' => 60,

    'label' => null,

    'prune_enabled' => true,

    'prune_crontab' => '0 0 * * *',

    'can_access' => [
        'role' => [],
    ],

    'pagination_page_options' => [
        10, 25, 50, 'all',
    ],

    'attachments_disk' => 'local',
    'store_attachments' => true,

    //Use this option for customize tenant model class
    //'tenant_model' => \App\Models\Team::class,

];

Testing

composer test

Screenshots

E-mail list

Advanced filters

Resend e-mail

Update addresses and resend e-mail

E-mail view with attachments

Credits

License

The MIT License (MIT). Please see License File for more information.