macaw
v1.7.0
Published
Scalable email tooling for transactional emails.
Downloads
13
Maintainers
Readme
Scalable email templates for node.js
Macaw is a suite of tools that helps you design and send transactional emails. It aims to solve the problems that usually occur at the intersection of design, copywriting and engineering.
Macaw is:
- A node.js package that helps you to use templates to send transactions emails
- A CLI tool that helps you structure and preview templates
Macaw is not:
- A Mailchimp-esque drag-and-drop email builder
- A email sending service
Quick example
Some lines of code usually say more than any documentation could, so here's a simple example of how this library could be used:
const macaw = require("macaw");
const sendgrid = require("@macaw-email/provider-sendgrid");
const mailer = macaw({
provider: sendgrid({ apiKey: "aaaaa-bbbbbbb-ccccccc-ddddddd" })
});
const template = await mailer.template("monthly-newsletter", {
customerName: "Example Business",
greeting: "Hi, Thomas!"
});
await template.send({
to: {
name: "Thomas Schoffelen",
email: "[email protected]"
}
});
Getting started
Quickly get up and running by executing this command in your project's root directory:
npx macaw init
This will:
- Create a
emails
directory with an example template and layout file. - Add
macaw
to your package.json file.
Take a look at the files created in the emails
directory, and use the documentation links below to learn what's next.
Documentation
- Templates and layouts
- Email sending providers
- Template storage sources
- Custom provider implementations
- API classes reference