Resend

Deliver transactional mail and synchronize consent-aware audience contacts through explicit Resend adapters.

Visit Resend ↗

Supported features

Authentication

Compose credentials, magic links, sessions, passkeys, MFA, and connected-provider access without handing application identity to a framework.

Magic links

Accounts and tenancy

Model organizations, memberships, invitations, ownership, active-account switching, and fail-closed data scope.

Invitations · Ownership transfer

Email delivery

Render typed application email and deliver it through explicit SES, Mailgun, Postmark, Resend, SendGrid, SMTP, or capture-test providers.

Rendered application email · Provider templates

Notifications and delivery

Define typed notifications, resolve recipient preferences, deliver across explicit channels, and retain one provider-independent history of every send.

Multi-channel delivery

Audiences and subscriber lifecycle

Build waitlists, newsletters, release lists, and preference centers with explicit consent, segmentation, confirmation, and delivery boundaries.

Broadcast delivery

Package reference

@playstack/mail

Rendered mail and provider templates

The Resend adapter delivers portable rendered messages and provider-owned templates through @playstack/mail/resend. Template variables are validated against Resend's string-and-number boundary before provider I/O, while the native client remains available for provider-specific capabilities.

Configure the adapter

ts
import { createMail } from '@playstack/mail'
import { createResendMailProvider } from '@playstack/mail/resend'

const mail = createMail({
  driver: createResendMailProvider(process.env.RESEND_API_KEY!),
  from: { address: 'hello@example.com', name: 'Example' },
})

Rendered messages, attachments, custom headers, and provider templates share the same portable mail contract. Applications remain responsible for queueing, retry idempotency, and delivery-event workflows.

Synchronize audience contacts

@playstack/audiences-resend maps Playstack's subscription, consent, confirmation, suppression, and unsubscribe lifecycle onto Resend Audiences contacts. It can treat Resend as a remote projection while Playstack remains the application authority, or participate in a deliberate remote-authority workflow.

Transactional mail and audience membership remain separate contracts even when both use the same Resend account and client.

Go

Playstack Pro tag
OriginsPricingBlogNewsletterChangelogStatusRoadmap
ContributorsCommunityIn Use ShowcaseCase StudiesPartnersSponsors
FAQsSupportContact

© 2026 Playstack. All rights reserved.

With OSS
Terms of ServicePrivacy PolicyCookie PolicyImprint

By

Commune Software