nuewire / mail
Encrypted, file-based Laravel mail settings with a single Livewire component.
1.4.0
2026-07-29 07:58 UTC
Requires
- php: ^8.2
- aws/aws-sdk-php: ^3.0
- illuminate/auth: ^11.0|^12.0|^13.0
- illuminate/contracts: ^11.0|^12.0|^13.0
- illuminate/encryption: ^11.0|^12.0|^13.0
- illuminate/filesystem: ^11.0|^12.0|^13.0
- illuminate/mail: ^11.0|^12.0|^13.0
- illuminate/support: ^11.0|^12.0|^13.0
- illuminate/translation: ^11.0|^12.0|^13.0
- illuminate/validation: ^11.0|^12.0|^13.0
- livewire/livewire: ^3.6|^4.0.3
- nuewire/support: ^1.0
- psr/log: ^1.1|^2.0|^3.0
- resend/resend-php: ^1.0
- symfony/http-client: ^7.0|^8.0
- symfony/mailgun-mailer: ^7.0|^8.0
- symfony/postmark-mailer: ^7.0|^8.0
Requires (Dev)
- orchestra/testbench: ^9.0|^10.0|^11.0
- phpunit/phpunit: ^11.0|^12.0
Suggests
- nuewire/platform: Adds Email under Settings > Configuration in the Nuewire admin navigation.
README
Mail driver settings for Laravel and Livewire.
Install
composer require nuewire/mail php artisan optimize:clear
Component
<livewire:nuewire-mail />
With nuewire/platform 2, the page appears under Settings → Configuration → Email at /admin/settings/email.
Drivers
- SMTP
- Sendmail
- Amazon SES
- Mailgun
- Postmark
- Resend
- Log
- Array
Storage
Settings are encrypted at:
storage/app/private/.nuewire/emails.json
Usage
The selected mailer becomes Laravel's default when the option is enabled.
Mail::to('user@example.com')->send(new InvoiceReady());
Use the package mailer explicitly:
Mail::mailer('nuewire')->to('user@example.com')->send(new InvoiceReady());
The initial driver is log.
Access
The component requires authentication by default.
NUEWIRE_MAIL_GATE=manage-email-settings
Publish
php artisan vendor:publish --tag=nuewire-mail-config php artisan vendor:publish --tag=nuewire-mail-views php artisan vendor:publish --tag=nuewire-mail-translations
Config path:
config/nuewire/mail.php
Restart queue or Octane workers after changing drivers.