Laravel Tutorials

In Laravel 5.5 You Can Render Mailables to the Browser

Published
In Laravel 5.5 You Can Render Mailables to the Browser image

When you are building custom HTML email templates, it’s typically a chore to test them across all the email clients, and testing them over and over. There are a few tools like Litmus which help solve this problem, but the service is expensive.

Another way to test while you are developing is to render out the email to the browser so you can make quick changes and get almost instant feedback. Although this is a practical use case, rendering Mailables to the browser hasn’t been that simple. That is changing in Laravel 5.5 and these will implement the Renderable Contract allowing you to display them directly from a route.

For example let’s create a UserWelcome Mailable:

php artisan make:mail UserWelcome --markdown=emails.user.welcome

Then, in our routes we can display it like this:

Route::get('/demo', function () {
return new App\Mail\UserWelcome();
});

Finally, here is the browser view of this email:

Outside of testing the email through the browser, another use case for this feature is to easily create web views of all the emails you send for when the message is all garbled when it arrives.

This new Render feature will be available with Laravel 5.5 that is due out in July or August. Be sure and join the newsletter to not miss out on the release announcement.

Eric L. Barnes photo

Eric is the creator of Laravel News and has been covering Laravel since 2012.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Lerd: A Free, Open Source Herd Alternative for Linux and macOS image

Lerd: A Free, Open Source Herd Alternative for Linux and macOS

Read article
Let's Encrypt HTTPS on an IP Address With FrankenPHP image

Let's Encrypt HTTPS on an IP Address With FrankenPHP

Read article
Laravel Chores: Resumable Data Operations and Cleanups image

Laravel Chores: Resumable Data Operations and Cleanups

Read article
NativePHP v4: Build Native iOS and Android UI in Blade image

NativePHP v4: Build Native iOS and Android UI in Blade

Read article
Laravel Lock: Distributed Locks for Models and Routes image

Laravel Lock: Distributed Locks for Models and Routes

Read article
Laravel Image Responses: Serve Resized Images From Routes image

Laravel Image Responses: Serve Resized Images From Routes

Read article