Build responsive e-mails easily using MJML and Laravel Mailables.
MJML is an awesome tool from MailJet that allows us to create responsive emails very easily. For more information on how to use it, head to their documentation here
To install this package, require this package using composer as follows:
composer require asahasrabuddhe/laravel-mjml
After composer installs the packages and all the dependencies, publish the package configuration using artisan command:
php artisan vendor:publish
Select the laravel-mjml in the list. You will also need to install the MJML CLI:
npm install --save mjml
-
Create a view containing MJML in your resources/views directory.
-
Create a mailable class using artisan command:
php artisan make:mail MJMLEmail
-
In the mailable class, replace
use Illuminate\Mail\Mailable;
with
use Asahasrabuddhe\LaravelMJML\Mail\Mailable;
-
In the build method, use:
$this->mjml('view.name');
By default, the package will automatically detect the path of the MJML CLI installed locally in the project. In case this does not happen or the MJML CLI is installed globally, please update the configuration file likewise.
That's it! You have successfully installed and configured the MJML package for use. Just create new views and use them in the mailables class.