This is a module that uses native JavaScript fetch
to make requests to the Resend API and no other modules that require Node.js specific features. The intention is to support platforms that support web platform features like fetch
but do not have Node.js APIs like http
, like Deno or Cloudflare Workers.
It is written in Deno and will be transpiled to JavaScript. It is intended to work in a similar method to the Resend Node module, though there are expected to be slight differences. Most importantly, resend-node depends on @react-email/render and Resend JS does not.
- [📧 Resend JS 📧](#-Resend JS-)
To use this library you will need a Resend account and a Resend API key.
Install with your favourite package manager:
npm install @philnash/resend
yarn add @philnash/resend
pnpm add @philnash/resend
There's no need to install, just import it from it's URL:
import { Resend } from "https://deno.land/x/resend_js/mod.ts";
You will need an API key for your Resend account. Then, import the module and create a new client.
import { Resend } from "resend-js";
const apiKey = process.env.RESEND_API_KEY;
const resend = new Resend(apiKey);
import { Resend } from "https://deno.land/x/resend-js/mod.ts";
const apiKey = Deno.env.get("RESEND_API_KEY");
const resend = new Resend(apiKey);
You will need the contents of your email in text, HTML, or both.
resend.emails.send({
from: "from@example.com",
to: "to@example.com",
subject: "Hello, World!",
html: "<h1>Hello, World!</h1><p>This is my first email sent with Resend JS</p>",
});
Note: resend-node supports rendering React emails using React Email, but Resend JS does not.
Bug reports and pull requests are welcome on GitHub at https://github.com/philnash/resend-fetch.
Fork and clone the project.
The project is written with Deno, so you will need to install the Deno runtime.
You can run the tests with the Deno task:
deno task test
This code is available as open source under the terms of the MIT License.