PHPackages                             multidialogo/raw-mailer-sdk - 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. multidialogo/raw-mailer-sdk

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

multidialogo/raw-mailer-sdk
===========================

A flexible library for sending emails using various drivers (AWS SES, SMTP, and a fake client for testing).

v1.0.26(1y ago)02MITPHPPHP ^8.0

Since Oct 9Pushed 1y ago1 watchersCompare

[ Source](https://github.com/Multidialogo/raw-mailer-sdk)[ Packagist](https://packagist.org/packages/multidialogo/raw-mailer-sdk)[ RSS](/packages/multidialogo-raw-mailer-sdk/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (3)Versions (8)Used By (0)

Multidialogo Raw Mailer SDK
===========================

[](#multidialogo-raw-mailer-sdk)

Welcome to the **Multidialogo Raw Mailer SDK**! This library provides a flexible and robust way to send emails using various drivers, including AWS SES, standard SMTP, and a fake mail client for testing purposes.

Table of Contents
-----------------

[](#table-of-contents)

- [Installation](#installation)
- [Usage](#usage)
- [Configuration](#configuration)
- [Features](#features)
- [Contributing](#contributing)
- [License](#license)

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

[](#installation)

To install the library, clone the repository and run:

```
composer install multidialogo/raw-mailer-sdk
```

Ensure you have the required dependencies installed, including the AWS SDK for PHP if you plan to use the SES driver.

Usage
-----

[](#usage)

### Basic Setup

[](#basic-setup)

To get started, include the necessary namespaces and create an instance of the `Facade` class:

```
use multidialogo\RawMailerSdk\Facade;
use multidialogo\RawMailerSdk\Model\SmtpMessage;

$facade = new Facade(
    Facade::DRIVERS['SES'], // or 'STD' for standard SMTP, 'FAKE' for testing
    [
        'version' => 'latest',
        'region' => 'your-region',
        'accessKey' => 'your-access-key',
        'secretKey' => 'your-secret-key',
    ],
    '/path/to/results', // Directory for result files
    'catchall.example.com', // Optional catchall domain
    5 // Max parallel jobs
);

// Creating a message
$message = new SmtpMessage(
    '4f41efd7-38ce-4d30-8a32-155a6ec8001b',
    'test@sender.multidialogo.it'),
    'test@recipient.multidialogo.it',
    'Test subject',
    [new SmtpHeader('X-some-header', 'header value here'),],
    'Plain text content',
    'Html content',
    [
        'some/accessible/path/01.pdf',
        'some/accessible/path/test.pdf',
        'some/accessible/path/some file.pdf',
    ]
);

// Sending multiple emails in parallel
$messages = [$message, /* other SmtpMessage instances */];
$results = $facade->parallelSend($messages, 3); // 3 attempts for each message
```

Configuration
-------------

[](#configuration)

### Drivers

[](#drivers)

The SDK supports three drivers:

- **FAKE**: A fake mail client for testing purposes.
- **SES**: AWS Simple Email Service.
- **STD**: Standard SMTP.

### Attachment Size Limits

[](#attachment-size-limits)

- AWS SES: Maximum attachment size is **6.5 MB**.
- Standard SMTP: Maximum attachment size is **25 MB**.

Features
--------

[](#features)

- Send emails in parallel for better performance.
- Handle attachments with MIME types.
- Customizable email headers and boundaries.
- Catch-all domain modification for non-production environments.
- Error handling for invalid email configurations.

Contributing
------------

[](#contributing)

Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes.

1. Fork the repository.
2. Create your feature branch (`git checkout -b feature/MyFeature`).
3. Commit your changes (`git commit -m 'Add some feature'`).
4. Push to the branch (`git push origin feature/MyFeature`).
5. Open a pull request.

Development Environment
-----------------------

[](#development-environment)

This repository includes a devcontainer configuration to streamline the development environment setup. You can use either PhpStorm or Visual Studio Code (VSCode) to take advantage of the development container.

### Easy jump start with docker compose

[](#easy-jump-start-with-docker-compose)

#### Install php dependencies

[](#install-php-dependencies)

(From the root directory)

```
docker compose run --rm app composer install --optimize-autoloader
```

#### Launch test suite

[](#launch-test-suite)

(From the root directory)

```
docker compose run --rm app ./vendor/bin/phpunit
```

This will run the unit test suite.

### Check mailcatcher web ui to debug messages sent with STD driver

[](#check-mailcatcher-web-ui-to-debug-messages-sent-with-std-driver)

```
http://localhost:1080/

```

### Using the DevContainer with VSCode

[](#using-the-devcontainer-with-vscode)

Install Docker: Ensure that Docker is installed on your machine. Download Docker

Install Visual Studio Code: If you don't have VSCode installed, you can download it from here.

Install the Dev Containers extension: In VSCode, go to the Extensions view (⇧⌘X or Ctrl+Shift+X), search for Dev Containers, and install the extension by Microsoft.

Clone the Repository:

```
git clone https://github.com/Multidialogo/raw-mailer-sdk.git
```

Open the Repository in VSCode: Open the project folder in VSCode.

Reopen in Container: Once the repository is opened in VSCode, a pop-up will appear asking to "Reopen in Container". If not, you can manually reopen by clicking on the green icon in the bottom-left corner and selecting "Reopen in Container".

Start Development: The container will automatically install the necessary PHP dependencies and set up the environment.

### Using the DevContainer with PhpStorm

[](#using-the-devcontainer-with-phpstorm)

Install Docker: Ensure that Docker is installed on your machine. Download Docker

Install PhpStorm: You can download PhpStorm from here.

Clone the Repository:

```
git clone https://github.com/Multidialogo/raw-mailer-sdk.git
```

Open the Project in PhpStorm: Open the repository folder in PhpStorm.

Configure Dev Container:

Open Settings in PhpStorm. Go to Build, Execution, Deployment &gt; Docker and ensure Docker is properly configured. Go to File &gt; Settings &gt; PHP &gt; CLI Interpreter, click Add..., and choose From Docker, Vagrant, VM, WSL, or Remote. Then select the appropriate container configuration. Start Development: PhpStorm will utilize the devcontainer and set up the environment, allowing you to work on the project seamlessly within the Dockerized PHP environment.

License
-------

[](#license)

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~1 days

Total

7

Last Release

571d ago

### Community

Maintainers

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

---

Top Contributors

[![zio-mitch](https://avatars.githubusercontent.com/u/5042579?v=4)](https://github.com/zio-mitch "zio-mitch (14 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/multidialogo-raw-mailer-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/multidialogo-raw-mailer-sdk/health.svg)](https://phpackages.com/packages/multidialogo-raw-mailer-sdk)
```

###  Alternatives

[illuminate/mail

The Illuminate Mail package.

5910.1M390](/packages/illuminate-mail)[therobfonz/laravel-mandrill-driver

Mandrill Driver for Laravel

773.5M](/packages/therobfonz-laravel-mandrill-driver)[symfony/mailjet-mailer

Symfony Mailjet Mailer Bridge

484.7M12](/packages/symfony-mailjet-mailer)[mailersend/laravel-driver

MailerSend Laravel Driver

87732.8k4](/packages/mailersend-laravel-driver)[symfony/mailchimp-mailer

Symfony Mailchimp Mailer Bridge

275.9M17](/packages/symfony-mailchimp-mailer)[laravel-notification-channels/aws-sns

Amazon Simple Notification Service (AWS SNS) notification channel for Laravel.

541.1M2](/packages/laravel-notification-channels-aws-sns)

PHPackages © 2026

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