Download the PHP package clinically-au/laravel-smtp2go without Composer
On this page you can find all versions of the php package clinically-au/laravel-smtp2go. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download clinically-au/laravel-smtp2go
More information about clinically-au/laravel-smtp2go
Files in clinically-au/laravel-smtp2go
Package laravel-smtp2go
Short Description Laravel Mail transport driver for SMTP2Go API
License MIT
Homepage https://github.com/clinically-au/laravel-smtp2go
Informations about the package laravel-smtp2go
SMTP2Go Laravel Mail Transport
A Laravel Mail transport driver for sending emails via the SMTP2Go API. This package provides seamless integration with Laravel's built-in mail system.
Features
- ✅ Full Laravel Mail API support
- ✅ Supports HTML and plain text emails
- ✅ File attachments with automatic Base64 encoding
- ✅ CC and BCC recipients
- ✅ Queue integration for background processing
- ✅ Automatic retries on failure
- ✅ Laravel 11 & 12 compatible
- ✅ PHP 8.4+ support
- ✅ Comprehensive test coverage
Requirements
- PHP 8.4+
- Laravel 11.0+ or 12.0+
- SMTP2Go API key (Get one here)
Installation
Install the package via Composer:
The service provider will be automatically registered.
Configuration
1. Add Environment Variables
Add your SMTP2Go API key to your .env file:
2. Configure Mail Driver
Add the SMTP2Go mailer to your config/mail.php:
3. Set as Default (Optional)
To use SMTP2Go as your default mailer:
Or in config/mail.php:
4. Publish Config (Optional)
If you need to customize the configuration:
This will create config/smtp2go.php:
Usage
Basic Email Sending
Once configured, use Laravel's Mail facade as normal:
Using a Specific Mailer
If you have multiple mailers configured:
Queued Emails
Send emails in the background using Laravel's queue system:
Email with CC and BCC
Email with Attachments
HTML and Plain Text
Testing
Package Test Suite
The package includes a comprehensive test suite:
Testing with Real SMTP2Go API
To verify the package works with your SMTP2Go account, use the included test script:
See test-app/README.md for detailed instructions.
Testing in Your Application
Use Laravel's mail faking in your tests:
How It Works
This package implements Laravel's custom mail transport interface by:
- Extending Symfony's
AbstractTransportclass - Converting Laravel mail messages to SMTP2Go API format
- Sending via SMTP2Go's REST API with Guzzle HTTP client
- Automatic Base64 encoding of attachments
- Proper formatting of email addresses (Name [email protected])
All error handling, retries, and queue integration are handled by Laravel's mail system automatically.
API Documentation
For detailed SMTP2Go API documentation, see:
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Contributions are welcome! Please see our contributing guidelines for details.
Security
If you discover any security-related issues, please email [email protected] instead of using the issue tracker.
Credits
- Wojt Janowski
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-smtp2go with dependencies
guzzlehttp/guzzle Version ^7.0
illuminate/contracts Version ^11.0||^12.0||^13.0