nixphp/mail

NixPHP Mail Plugin for quick email communication.

Maintainers

Details

github.com/nixphp/mail

Source

Issues

Installs: 1

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:nixphp-plugin

dev-main 2025-05-30 19:21 UTC

This package is auto-updated.

Last update: 2025-05-30 19:22:54 UTC


README

Logo

NixPHP Mailer Plugin

← Back to NixPHP

nixphp/mail

A lightweight, extensible mailer system for NixPHP – with full transport abstraction and attachment support.

This plugin provides a clean interface for sending emails in your NixPHP application. It includes a default MailTransport that uses PHP’s built-in mail() function – but can easily be swapped for SMTP, API-based services, or other custom transports.

🧩 Part of the official NixPHP plugin collection. Install it if you need flexible, framework-integrated email handling.

📦 Features

✅ Compose and send emails with fluent API ✅ Supports To, Cc, Bcc, Reply-To, and Attachments ✅ Sends HTML or plain text ✅ Fully transport-driven – extend or swap backend logic ✅ Ships with default MailTransport using native PHP mail()

📥 Installation

composer require nixphp/mail

🚀 Usage

📤 Basic mail sending

mailer()
    ->setFrom('hello@example.com')
    ->addTo('john@example.com')
    ->setSubject('Hello from NixPHP')
    ->setContent('<b>Welcome!</b>', true)
    ->send();

📎 Add attachments

mailer()
    ->setFrom('info@example.com')
    ->addTo('client@example.com')
    ->setSubject('Monthly Report')
    ->addAttachment('report.pdf', '/path/to/report.pdf')
    ->send();

You can also attach images inline and reference them via cid::

->addAttachment('logo.png', '/path/to/logo.png', true)
->setContent('<img src="cid:logo.png">')

🔄 Use a custom transport

To swap out the default MailTransport, inject your own:

use NixPHP\Mail\Mailer;
use App\Mail\MyCustomTransport;

$mailer = new Mailer(new MyCustomTransport());
$mailer->addTo('john@example.com')->send();

Your transport must implement:

NixPHP\Mail\Core\TransportInterface

✅ Requirements

  • nixphp/framework >= 1.0
  • PHP >= 8.1

📄 License

MIT License.