~/sendslice api v1 · operational
// transactional email

Good-looking email,easy as pie.

design your email docs

Free to try. No card. Your first email lands in about five minutes.

templates
4
flavours
7
email html in your app
0 lines
time to first send
5 min
the preview

This is the product, not a screenshot.

Click a flavour. The same engine that sends the mail redraws it in front of you.

Really rendering. Same engine that sends the mail.

the part you stop doing

Email is never the thing you set out to build.

Sending email yourself

// somewhere in your codebase, forever
const html = `<table role="presentation"
  style="width:100%;max-width:600px;
  background:#fff;border:1px solid #e4e4e7">
  <tr><td style="padding:28px 32px">
    <h1 style="font:600 24px/1.3 Helvetica">
      Reset your password
    </h1>
    <a href="${url}" style="display:inline-block;
      padding:13px 30px;background:#2563eb;
      color:#fff;border-radius:6px">Reset</a>
  </td></tr></table>`

await mailer.send({ to: user.email, subject, html })

Every colour change is a deploy. Every new email is another block like this.

Sending email with SendSlice

// you chose the look in the builder, once
await sendslice.send({
  template_id: 'password-reset',
  to: user.email,
  subject: 'Reset your password',
  data: { first_name: user.firstName,
          reset_url: url },
})

No colours. No fonts. No HTML. Change the look in the builder and this code never changes.

Stop writing email HTML.