EmDash utilise l’e-mail pour la connexion par lien magique, les invitations d’utilisateurs et la récupération de compte. Un plugin de fournisseur délivre le courrier ; vous choisissez et configurez le fournisseur en installant son plugin.
Ce guide couvre le fonctionnement du pipeline d’e-mails, ce que vous obtenez prêt à l’emploi en développement et comment connecter un vrai fournisseur pour la production.
Comment fonctionne la livraison d’e-mails
Un seul plugin de fournisseur actif délivre tout le courrier sortant. Si aucun fournisseur n’est actif, les fonctionnalités nécessitant un e-mail ne sont pas disponibles — les liens d’invitation doivent alors être copiés et partagés manuellement depuis la page Utilisateurs.
Vous pouvez voir l’état actuel sous Settings → Email dans l’administration : si un fournisseur est actif, quel plugin c’est, et un bouton send test email qui teste le pipeline complet.
Développement : Fournisseur console intégré
En développement (astro dev), EmDash active automatiquement un fournisseur console intégré lorsqu’aucun autre fournisseur n’est sélectionné. Il n’envoie rien — il journalise chaque e-mail dans le terminal et conserve les 100 derniers messages en mémoire.
Cela signifie que les liens magiques et les invitations fonctionnent prêts à l’emploi en développement : demandez un lien magique, puis copiez l’URL depuis votre sortie de terminal. Vous pouvez également lister les e-mails capturés au point de terminaison réservé au développement GET /_emdash/api/dev/emails (et les effacer avec DELETE).
Le fournisseur console est réservé au développement et ne s’exécute jamais dans les builds de production.
Production : Installer un plugin de fournisseur
Cloudflare Workers
Sur Cloudflare, utilisez le plugin cloudflareEmail() de @emdash-cms/cloudflare/plugins. Il envoie via Cloudflare Email Sending sur une liaison send_email du Worker, donc il n’a besoin d’aucun compte externe ni clé API. Le guide de déploiement Cloudflare vous guide à travers l’intégration du domaine expéditeur, l’ajout de la liaison et l’enregistrement du plugin.
Node et autres plateformes
La famille de plugins maintenue par la communauté emdash-smtp couvre le SMTP générique plus les fournisseurs hébergés, y compris Amazon SES, Brevo, Mailgun, Postmark, Resend, SendGrid, Zoho et plus.
pnpm add emdash-smtp
La configuration suivante enregistre le plugin avec EmDash :
import { defineConfig } from "astro/config";
import emdash from "emdash/astro";
import { emdashSmtp } from "emdash-smtp";
export default defineConfig({
integrations: [
emdash({
// ...votre configuration de base de données/stockage
plugins: [emdashSmtp()],
}),
],
});
Les informations d’identification du fournisseur sont configurées via les propres paramètres du plugin — consultez son README pour la matrice des fournisseurs et les détails de configuration.
Où résident les informations d’identification du fournisseur
Les plugins de fournisseur déclarent leurs clés API et mots de passe en tant que paramètres de plugin. Saisissez-les sur la page de paramètres du plugin dans l’administration ; EmDash les stocke dans la base de données aux côtés d’autres paramètres de plugin, et la rotation d’une clé signifie coller la nouvelle valeur là. Secrets & Key Management décrit le stockage et ses mises en garde.
Le fait qu’un plugin puisse lire un secret de déploiement (wrangler secret put, .env) dépend de son format, suivez donc son README. Les plugins sandbox ne peuvent pas accéder à process.env ou aux liaisons de plateforme. Un plugin natif peut lire process.env ; il ne doit pas utiliser import.meta.env, qui est intégré au moment de la compilation et cuit la valeur de la machine de build dans le bundle.
Sélectionner un fournisseur et tester
-
Installez et activez le plugin de fournisseur, puis ouvrez Settings → Email dans l’administration.
-
Si plus d’un plugin de fournisseur est installé, choisissez celui qui est actif là — un seul délivre à la fois.
-
Utilisez Send test email pour vérifier le pipeline complet de bout en bout. Le résultat révèle directement les erreurs de livraison, ce qui est le moyen le plus rapide de déboguer les informations d’identification.
Dépannage
- “No email provider is configured” — aucun plugin de fournisseur n’est actif. Installez et activez-en un, puis sélectionnez-le dans Settings → Email.
- Liens magiques / invitations silencieusement indisponibles — même cause. Sans fournisseur, la page Utilisateurs crée toujours des invitations, mais vous devez copier le lien d’invitation manuellement.
- Fonctionne en développement, échoue en production — le développement utilise le fournisseur console intégré, qui masque un fournisseur de production manquant. Vérifiez Settings → Email sur le site déployé.
- Les e-mails atterrissent dans les spams — configurez SPF/DKIM/DMARC pour votre domaine d’envoi chez votre fournisseur d’e-mails ; c’est côté fournisseur, pas un paramètre EmDash.
Connexe
- Authentification — liens magiques, invitations et flux de récupération qui dépendent de l’e-mail
- Référence des hooks d’e-mail —
email:beforeSend,email:deliver,email:afterSend