E-Mail-Provider
Konfigurieren Sie Resend, Postmark, Cloudflare, Plunk, Nodemailer oder lokale Konsole.
Wählen Sie config.mailing.provider: console, resend, postmark, cloudflare, plunk, ses, sendgrid, mailgun, nodemailer oder custom. Vorlagen nutzen unabhängig vom Anbieter denselben Helfer sendEmail.
| Anbieter | Konfiguration |
|---|---|
| Resend | RESEND_API_KEY oder das unterstützte Admin-Integrationsformular |
| Postmark | POSTMARK_SERVER_TOKEN |
| Cloudflare | CLOUDFLARE_ACCOUNT_ID, CLOUDFLARE_EMAIL_API_TOKEN |
| Plunk | PLUNK_API_KEY |
| Amazon SES | SES_REGION, SES_SMTP_USER, SES_SMTP_PASSWORD |
| SendGrid | SENDGRID_API_KEY |
| Mailgun | MAILGUN_SMTP_USER, MAILGUN_SMTP_PASSWORD, MAILGUN_REGION (us / eu) |
| Nodemailer / SMTP | MAIL_HOST, MAIL_PORT, MAIL_USER, MAIL_PASS |
| Console | Keine Zugangsdaten; lokale E-Mail-Ausgabe |
| Custom | send in packages/mail/provider/custom.ts implementieren |
Resend, Postmark, Cloudflare und Nodemailer beziehen den Absender aus den aufgelösten Template-Einstellungen mit config.mailing.from als Fallback. Plunk verwendet den im Dienst konfigurierten Absender; der Adapter übergibt kein Absenderfeld. MOCK_SERVICES=true erzwingt den Console-Anbieter. Fehlende Schlüssel eines gewählten echten Anbieters aktivieren Console nicht automatisch.
Der Console-Anbieter protokolliert E-Mails und pflegt die lokale Testdatei .vibekit/mail-trap.json. Behandeln Sie deren Inhalt als privat, da Verifizierungscodes und Links enthalten sein können.
SES, SendGrid und Mailgun
Diese Adapter verwenden Nodemailer auf Port 587 mit verpflichtendem STARTTLS und dem Absender aus den aufgelösten Template-Einstellungen. Wählen Sie den Adapter unter /app/admin/setup oder in config.mailing.provider; Umgebungsvariablen haben Vorrang vor gespeicherten Integrationswerten.
- SES: wählen Sie eine SES-Region mit SMTP-Endpunkt, erzeugen Sie dort SMTP-Zugangsdaten und verifizieren Sie die Absenderidentität. Beantragen Sie Produktionszugriff, wenn das Konto noch in der Sandbox liegt.
SES_SMTP_PASSWORDist ein SMTP-Passwort, kein AWS Secret Access Key. - SendGrid: erstellen Sie einen API-Schlüssel mit Mail-Send-Berechtigung und authentifizieren Sie die Absenderdomain oder verifizieren Sie den Absender. Der Adapter nutzt den festen SMTP-Benutzernamen
apikeyundSENDGRID_API_KEYals Passwort. - Mailgun: verifizieren Sie die Versanddomain und verwenden Sie deren SMTP-Benutzernamen und Passwort.
MAILGUN_REGIONmuss zur Domainregion passen; Standard istus. Ein HTTP-API-Schlüssel ist kein SMTP-Passwort.
Prüfen Sie nach dem Einrichten die Zustellung einer Testnachricht und das Fehlerverhalten. DNS-Werte müssen aus dem Dashboard Ihres Kontos stammen.
Anbieter ergänzen
Nutzen Sie MailProvider / SendEmailHandler aus mail: send({ to, subject, text, html? }) liefert Promise<void> und muss bei Zustellfehlern fehlschlagen. Implementieren Sie den vorhandenen custom-Adapter oder ergänzen Sie eine Provider-ID in packages/config/providers.ts samt Lazy-Resolver in packages/mail/provider/index.ts. Rendering und Übersetzungen bleiben in packages/mail/util/templates.ts; Adapter versenden fertig gerenderte Inhalte.
Falls ein Anbieter-SDK nötig ist, ergänzen Sie es in packages/mail/package.json und aktualisieren Sie bun.lock. Prüfen Sie Rendering getrennt von Zustellung sowie den Fehlerpfad und eine echte Testzustellung vor dem Produktionseinsatz.
Domain-Verifizierung
Übernehmen Sie Domain-, DKIM-, SPF- und Return-Path-Einträge aus dem Anbieter-Dashboard für Ihre konkrete Domain und Region. Es gibt keine universellen DNS-Werte für jedes Konto, und Authentifizierung garantiert keine Inbox-Zustellung. Stimmen Sie DMARC mit den vorhandenen Versanddiensten der Domain ab, bevor Sie eine Reject-Richtlinie aktivieren.
Weiterlesen: E-Mail-Vorlagen.
Ergänzen Sie bei einer neuen Provider-ID auch den zugehörigen Zugangsdaten-Hinweiseintrag in packages/config/providers.ts. Dieser dient Produktvalidierung und Setup-Hinweisen; ein Product-Manifest wählt zur Laufzeit keinen Adapter automatisch aus.