Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Resend Laravel Laravel Package

resend/resend-laravel

Resend integration for Laravel and Symfony Mailer. Send emails via the Resend API using a simple facade, or switch to the bundled Laravel mailer transport. Configure your RESEND_API_KEY and set MAIL_MAILER=resend to get started.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Migration from legacy email providers (e.g., Mailgun, SendGrid, AWS SES) to Resend, leveraging its cost efficiency, developer-friendly API, and modern features like idempotency keys, tags, and webhook support.
  • Roadmap alignment with Laravel 13+ and PHP 8.1+ compatibility, ensuring long-term maintainability.
  • Build vs. Buy: Avoid reinventing email infrastructure; adopt a batteries-included solution with Resend’s Laravel mailer integration, reducing dev time for email workflows.
  • Use cases:
    • Transactional emails (password resets, notifications).
    • Marketing campaigns with tags for segmentation.
    • Webhook-driven automation (e.g., tracking email.failed events).
    • Domain verification and SPF/DKIM setup via Resend’s dashboard.

When to Consider This Package

  • Adopt if:

    • Your Laravel app needs a modern, cost-effective email provider with Resend’s free tier (10K emails/month).
    • You require webhook support for real-time email event tracking (e.g., bounces, opens).
    • Your team uses Laravel 11+ or Symfony Mailer and needs seamless integration.
    • You want idempotency keys to prevent duplicate emails.
    • Your app needs inline attachments (e.g., images in HTML emails) or ICS/calendar invites.
  • Look elsewhere if:

    • You’re not using Laravel/Symfony (this package is framework-specific).
    • You need advanced templating (e.g., Handlebars, Jinja2); Resend’s Laravel mailer uses Blade by default.
    • Your app requires multi-channel messaging (SMS, push); Resend is email-focused.
    • You’re on Laravel <11 or PHP <8.1 (unsupported).
    • You need enterprise-grade SLAs (Resend’s free tier lacks guarantees).

How to Pitch It (Stakeholders)

For Executives: "Resend’s Laravel package lets us replace our current email provider with a scalable, cost-efficient alternative—10K free emails/month—while cutting dev time with built-in Laravel mailers, webhooks, and idempotency. It’s future-proof (Laravel 13+ ready) and aligns with our push for lean infrastructure."

For Engineering: *"This package drops in as a drop-in replacement for Laravel’s default mailer, adding Resend’s modern API (tags, idempotency) and webhook support with minimal code changes. Key perks:

  • Zero setup: Configure via .env and config/mail.php.
  • Webhooks: Track email.failed, email.received, etc., in real time.
  • Attachments: Supports inline images, ICS files, and custom MIME types.
  • Cost: Free tier covers most dev/test needs; pay-as-you-go for scale. Tradeoff: Tight Laravel coupling (not framework-agnostic), but worth it for Laravel shops."*

For Developers: *"Need to send emails in Laravel? This package handles Resend integration so you don’t have to. Key features:

  • Facade-based API: Resend::emails()->send([...]) for quick sends.
  • Laravel Mailer: Use MAIL_MAILER=resend in .env for seamless Mailable classes.
  • Webhooks: Plug into Resend’s events (e.g., email.bounced) via middleware.
  • Attachments: Supports inline images, files, and ICS invites. Example:
Resend::emails()->send([
    'from' => 'hello@yourdomain.com',
    'to' => 'user@example.com',
    'subject' => 'Welcome!',
    'html' => '<p>Check this out: <img src="cid:logo"></p>',
    'attachments' => [['content_id' => 'logo', 'filename' => 'logo.png', 'content' => base64_encode(file_get_contents('logo.png'))]],
]);
```"*
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle
codeflextech/permission-manager
karnoweb/livewire-datepicker
sayedenam/sayed-dashboard
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui