Documentação
Email (Resend)
Email transacional com Resend — verificação, redefinição de senha, templates e como adicionar novos emails.
O Motoko Base envia emails de auth e conta pelo Resend. Isto é apenas email transacional — não marketing.
Official docs: Resend documentation
Setup
- Crie uma conta no Resend
- Crie uma API key (permissão de envio)
- Adicione e verifique seu domínio de envio (SPF/DKIM) — ou use
onboarding@resend.devpara testes locais - Defina as env vars:
| Variable | Purpose |
|---|---|
RESEND_API_KEY | Server-only API key |
EMAIL_FROM | Sender, e.g. My App <noreply@yourdomain.com> |
Mantenha também BETTER_AUTH_URL alinhada com sua URL pública — o Better Auth monta links de verificação/reset a partir dela.
Sem Resend o app sobe, mas emails de verificação e redefinição de senha não serão enviados.
What sends automatically
| Trigger | Template | |
|---|---|---|
| Verification | Sign up / resend | verification-email.tsx |
| Password reset | Forgot password | password-reset-email.tsx |
| Welcome | Account created | welcome-email.tsx |
O Better Auth possui tokens e URLs (src/lib/auth/auth.ts). A camada de email só entrega via helpers em src/lib/email/.
Templates
src/lib/email/templates/
shared.tsx # layout, brand name
verification-email.tsx
password-reset-email.tsx
welcome-email.tsxConstruídos com @react-email/components. Edite o copy e o estilo nos arquivos de template. Nome da marca: shared.tsx.
Add a new transactional email
- Crie
src/lib/email/templates/your-email.tsx(useTransactionalEmailLayoutdeshared.tsx) - Exporte
sendYourEmail(...)desrc/lib/email/index.ts - Chame de uma server action, webhook ou auth hook — nunca de client components
Somente src/lib/email/client.ts importa o SDK do Resend diretamente.
Auth UI routes
| Route | Purpose |
|---|---|
/forgot-password | Request reset link |
/reset-password | Set new password from email link |
/verify-email | Resend verification |
Forgot-password verifica isEmailConfigured() e mostra um erro claro se o Resend não estiver configurado.
Where to change this
| What | Where |
|---|---|
| Send helpers | src/lib/email/index.ts |
| Resend client & config | src/lib/email/client.ts, config.ts |
| Templates | src/lib/email/templates/ |
| Auth email hooks | src/lib/auth/auth.ts |
Better Auth — fluxo de verificação e reset.
Environment Variables — referência de env.