Laravel 8.x Markdown Templates Email Example

In this tutorial i will show you how to send email in laravel using markdown. Markdown mailable messages allow you to take advantage of the pre-built templates and components of mail notifications in your mailables.

Since the messages are written in markdown, Laravel is able to render beautiful, responsive HTML templates for the messages while also automatically generating a plain-text counterpart.

Laravel Markdown provides components, tables, email link, button, embed image etc. Markdown beautiful layout you can use with email template. In this tutorial i will discuss from scratch abou laravel markdown email template.

So in this laravel mailable example tutorial we will see laravel mail markdown components. So let's see how we can send email using markdown mailable class in laravel 8.


In this tutorial, i am going to tell you how to send simple email with gmail smtp configuration using laravel 8 mailable class.

It is very simple and best way. you have to just follow few step and you will get simple mail send example in your laravel 8 application.


Read More : How to Install Botman Chatbot in Laravel


Here we are share with you email send in laravel example when user register then after send one confirmation link on use email address


Step : 1 Create application

Install the new Laravel Project by the running following command.

composer create-project --prefer-dist laravel/laravel MarkdownEmailTest


Step : 2 Create route for send mail

Now we have to create our route, so to create route paste this following code

Route::get('sendemail', 'SendEmailController@index')->name('sendemail');


Step : 3 Create SendEmailController

Now, we are need to create SendEmailController.php file in app/Http/Controllers folder


namespace App\Http\Controllers;

use App\Mail\TestMail;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class SendEmailController extends Controller
    public function ship(Request $request)
        $valueArray = [
        	'name' => 'John',
        try {
            \Mail::to('')->send(new TestMail($valueArray));
            echo 'Mail send successfully';
        } catch (\Exception $e) {
            echo 'Error - '.$e;


Step : 4 Create email markdown 


to create markdown mail just run below command.

php artisan make:mail TestEmail--markdown=emails.testmail

Here, we are create new one markdown email as well as email templete blade using following command.


After run above command you can see TestMail.php file automatice created in app/Mail folder and your email templet/blade file testmail.php is created in resources/views/emails folders


namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class TestMail extends Mailable
	use Queueable, SerializesModels;
	public function __construct($content)
		$this->content = $content;

	public function build()
		return $this->markdown('emails.testmail') //pass here your email blade file


Now oprn your resources/views/emails/testmail.blade.php file and make changes look like.

# Dear, {{$content['name']}}

You are receiving this email because we received a signup request for your this mail account.

@component('mail::button', ['url' => '')])
Click Here

If you did not request a signup , no further action is required.

{{ config('') }}


Now we are ready to run our example so run bellow command ro quick run:

php artisan serve


Now you can open bellow URL on your browser:



Hope it can help you.


#laravel #mail #laravel-mail #markdown-mail #mailables