Mailgun

Deliver rendered messages or stored Mailgun templates through an explicit regional provider client.

Visit Mailgun ↗

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

Select the provider region explicitly

@playstack/mail/mailgun supports rendered messages, attachments, custom headers, and stored templates with exact JSON variables. Its fetch-based client accepts an explicit API base URL for Mailgun's US or EU infrastructure.

ts
import { createMail } from '@playstack/mail'
import { createMailgunMailProvider } from '@playstack/mail/mailgun'

const mail = createMail({
  driver: createMailgunMailProvider(
    process.env.MAILGUN_API_KEY!,
    'mg.example.com',
    { url: 'https://api.eu.mailgun.net' },
  ),
  from: 'hello@example.com',
})

The portable boundary validates envelopes before provider I/O. Mailgun's native client remains accessible for provider-specific behavior.

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