PHPackages                             maantje/react-email - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. maantje/react-email

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

maantje/react-email
===================

React email for Laravel

v1.0.0(1y ago)4926.0k—6.3%81MITPHPCI passing

Since Feb 3Pushed 1y ago4 watchersCompare

[ Source](https://github.com/maantje/laravel-react-email)[ Packagist](https://packagist.org/packages/maantje/react-email)[ Docs](https://github.com/maantje/laravel-react-email)[ RSS](/packages/maantje-react-email/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (6)Used By (1)

React Email for Laravel
=======================

[](#react-email-for-laravel)

Easily send [React Email](https://react.email/) emails with Laravel using this package.

Installation
------------

[](#installation)

First, install the package via Composer:

```
composer require maantje/react-email
```

Then, install the required Node dependencies:

```
npm install vendor/maantje/react-email
```

Getting Started
---------------

[](#getting-started)

1. Install React Email using the [automatic](https://react.email/docs/getting-started/automatic-setup) or [manual](https://react.email/docs/getting-started/manual-setup) setup.
2. Create an email component in the `emails` directory (e.g., `new-user.tsx`). Ensure the component is the default export.

Example email component:

```
import * as React from 'react';
import { Text, Html } from '@react-email/components';

export default function Email({ user }) {
    return (

            Hello, {user.name}

    );
}
```

3. Define the email directory path in your Laravel `.env` file:

```
REACT_EMAIL_DIRECTORY="emails/directory/relative/from/laravel/root"
```

4. Generate a new Laravel Mailable class:

```
php artisan make:mail NewUser
```

5. Use `ReactMailView` in your `Mailable`, or extend your `Mailable` from `ReactMailable``

```
use App\Models\User;
use Maantje\ReactEmail\ReactMailable;
use Illuminate\Mail\Mailables\Envelope;
use Illuminate\Mail\Mailables\Content;
use Maantje\ReactEmail\ReactMailView;

class NewUser extends ReactMailable // Extend, from \Maantje\ReactEmail\ReactMailable
{
    use ReactMailView; // or use \Maantje\ReactEmail\ReactMailView

    public function __construct(public User $user)
    {
        // Public properties will be passed as props to the React email component.
        // Alternatively, use the `with` property of `content`.
    }

    public function envelope()
    {
        return new Envelope(
            subject: 'New User',
        );
    }

    public function content()
    {
        return new Content(
            view: 'new-user', // Component filename without the extension
        );
    }
}
```

Running Tests
-------------

[](#running-tests)

Run tests using [Pest](https://pestphp.com/):

```
./vendor/bin/pest
```

Security
--------

[](#security)

If you discover any security-related issues, please email the author instead of using the issue tracker.

License
-------

[](#license)

This package is open-source and licensed under the MIT License. See the [LICENSE](/LICENSE) file for details.~~

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance44

Moderate activity, may be stable

Popularity42

Moderate usage in the ecosystem

Community18

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 75% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~189 days

Total

5

Last Release

443d ago

Major Versions

v0.4.0 → v1.0.02025-03-01

### Community

Maintainers

![](https://www.gravatar.com/avatar/f40d5cff5f8299f4f3909701969fd2c677e41245b2ce26f975f3dd806b010ee1?d=identicon)[moijamie](/maintainers/moijamie)

---

Top Contributors

[![maantje](https://avatars.githubusercontent.com/u/9058265?v=4)](https://github.com/maantje "maantje (6 commits)")[![arvcork](https://avatars.githubusercontent.com/u/146995075?v=4)](https://github.com/arvcork "arvcork (1 commits)")[![rochmadnf](https://avatars.githubusercontent.com/u/53666901?v=4)](https://github.com/rochmadnf "rochmadnf (1 commits)")

---

Tags

laravelreact-emaillaravelreactreact email

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/maantje-react-email/health.svg)

```
[![Health](https://phpackages.com/badges/maantje-react-email/health.svg)](https://phpackages.com/packages/maantje-react-email)
```

###  Alternatives

[tzsk/sms

A robust and unified SMS gateway integration package for Laravel, supporting multiple providers.

320244.3k6](/packages/tzsk-sms)[erag/laravel-disposable-email

A Laravel package to detect and block disposable email addresses.

226102.4k](/packages/erag-laravel-disposable-email)[coreproc/nova-notification-feed

A Laravel Nova package that adds a notification feed in your Nova app.

10149.1k](/packages/coreproc-nova-notification-feed)[matthewbdaly/laravel-sms

A Laravel and Lumen integration for matthewbdaly/sms-client to enable sending SMS messages

3529.8k](/packages/matthewbdaly-laravel-sms)[ashallendesign/laravel-mailboxlayer

A lightweight Laravel package for validating emails using the Mailbox Layer API.

762.0k](/packages/ashallendesign-laravel-mailboxlayer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
