This section is a set of copy-pasteable, working examples — pick your frontend framework, then wire up storage, test email, and (if you need it) server-side rendering.
How the pieces fit together
A typical production setup uses three of Maildeno’s pieces together:
@maildeno/editor (browser) → storageAdapter → your API / DB / object storage
↓ onSendTestEmail
your backend → email provider (Postmark, Resend, SES…)
@maildeno/renderer (backend, optional) → render saved template → email provider
The editor never talks to a backend on its own — every network call is one you write, through storageAdapter or onSendTestEmail. @maildeno/renderer is separate again: it’s for rendering a saved template server-side (a scheduled send, a transactional email), not something the editor calls into directly.
Framework quickstarts
Each guide covers installation, mounting, sizing the container, and teardown for that framework’s lifecycle model.
| Framework | Notes |
|---|---|
Native |
|
|
|
React, plus |
|
The Vue component behind |
|
|
|
|
|
Plain |
|
The framework-agnostic pattern everything else above is built on. |
Building on something not listed here — Solid, Qwik, a custom element host, a CMS admin panel? Start with Vanilla JS, since every other guide is a thin lifecycle wrapper around that same init() call.
|
Backend integration guides
| Guide | Covers |
|---|---|
The |
|
|
|
Using |
@maildeno/renderer in other backend frameworks
Same core render() call, wired into each framework’s request lifecycle:
| Framework | Notes |
|---|---|
A |
|
A render plugin/route, with |
|
Requires the Node.js runtime, not Edge — |
|
Runtime compatibility table, plus loading templates from S3 instead of bundled files. |
Where to go next
-
Open Source overview — how
@maildeno/editorand@maildeno/rendererrelate to the hosted platform -
@maildeno/editorreference — fullEditorHandleAPI -
@maildeno/rendererreference — full rendering API