The maildeno npm package is the official JavaScript and TypeScript SDK for the Maildeno Render API.
npm install maildeno
Requires Node.js 18+ (or any runtime with native fetch — Bun, Deno, Cloudflare Workers, browser via a server proxy).
30-second example
import { MaildenoClient } from "maildeno"
const client = new MaildenoClient({
apiKey: process.env.MAILDENO_API_KEY!,
})
const html = await client.renderHtml("550e8400-e29b-41d4-a716-446655440000", {
merge_tags: {
text: { name: "Noruwa", company: "Maildeno" },
url: { reset_url: "https://app.example.com/reset/abc123" },
},
context: {
plan: "pro",
},
})
console.log(html) // <!DOCTYPE html>...
TypeScript types
All types are exported from the package root:
import type {
RenderTarget, // "html" | "react-email" | "mjml"
RenderOptions, // input to client.render()
RenderResult, // output from client.render()
DynamicData, // { merge_tags?, context? }
MergeTagGroup, // { text?, url?, attr? }
MaildenoConfig, // constructor config
SdkErrorCode, // union of error code strings
ValidationIssue, // issue on err.issues
} from "maildeno"