📡 You're offline — showing cached content
New version available!
Quick Access
Tutorials Laravel Framework Mail

Mail

5 min read
Send HTML emails with Laravel Mailables using SMTP, Mailgun, or SES drivers.

Sending Mail

php artisan make:mail WelcomeEmail

class WelcomeEmail extends Mailable {
    use Queueable, SerializesModels;

    public function __construct(private User $user) {}

    public function envelope(): Envelope {
        return new Envelope(subject: "Welcome to MyApp!");
    }

    public function content(): Content {
        return new Content(view: "emails.welcome",
                           with: ["user" => $this->user]);
    }
}

// Send
Mail::to($user->email)->send(new WelcomeEmail($user));
Mail::to($user)->queue(new WelcomeEmail($user));    // via queue
Mail::to($user)->later(now()->addHours(1), new WelcomeEmail($user));

// .env
MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=you@gmail.com
MAIL_ENCRYPTION=tls