Files
myeasycms-v2/packages/mailers
giancarlo 65e8dab1b2 Update codebase to enhance debugging and improve user interface
The codebase has been updated throughout to improve debugging capabilities notably in the PostgresDatabaseWebhookVerifierService and create-reader modules. User interface has also been enhanced in the marketing layout and blog page. Minor reordering of entries in email-templates and adjustment of configurations in turbo.json has also been performed.
2024-05-02 01:16:50 +07:00
..
2024-04-17 18:42:00 +08:00
2024-03-24 02:23:22 +08:00

Mailers - @kit/mailers

This package is responsible for sending emails using a unified interface across the app.

The default mailer uses the nodemailer package to send emails. You can create custom mailers by extending the Mailer class.

Make sure the app installs the @kit/mailers package before using it.

{
    "name": "my-app",
    "dependencies": {
        "@kit/mailers": "*"
    }
}

Usage

By default, the package uses nodemailer.

To use Cloudflare, please set the environment variable MAILER_PROVIDER to cloudflare.

MAILER_PROVIDER=cloudflare

To use Resend's HTTP API, please set the environment variable MAILER_PROVIDER to resend.

MAILER_PROVIDER=resend

Send an email

import { getMailer } from '@kit/mailers';

async function sendEmail() {
  const mailer = await getMailer();

  return mailer.sendEmail({
    to: '',
    from: '',
    subject: 'Hello',
    text: 'Hello, World!'
  });
}

Cloudflare

If you're using the cloudflare provider, please also read the instructions of the package Vercel Email to setup your Workers.

Resend

If you're using the resend provider, please add the following environment variables:

RESEND_API_KEY=your-api-key