Skip to content

Add a plain-text part to every send and a working "view in browser" link #35

Closed

Description

@clbotdev

Two related deliverability gaps:

  1. No plain-text part. sendMail (apps/api/src/mail/send.ts) sends only html. HTML-only bulk mail scores worse with spam filters and is unreadable in text-only clients.
  2. "View in browser" has nothing behind it. It appears in packages/email-editor/src/lib/default-email.ts:78 as plain text, with no link and no hosted page.

Proposal

  • Generate text alongside html for every broadcast, sequence and transactional send, unless the caller passes its own text.
    • Links become text (url), list items get • , style/script/head and the hidden preheader are dropped, and blank lines are collapsed.
    • Add a "Read online: URL" line and the footer (address and unsubscribe URL) in text form.
    • https://github.com/marclou/mailcheap uses a small hand-written htmlToText; the html-to-text package is also an option.
  • Add a {{view_in_browser_url}} merge tag and a hosted, signed per-email web view. If the public archive lands, public broadcasts can link to it instead.
  • Optionally show the plain-text version in the preview.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestseverity: mediumNotable gap with a workaround, or competitive parity

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions