Stop shipping code for every email copy change

Every template change that requires a pull request, a code review and a deployment is engineering time wasted on a non-engineering problem.

Templates in your codebase create avoidable problems

Copy changes block the release train

Marketing wants to update the payment failed email. Engineering must schedule, review, merge and deploy.

No preview without the full stack

Checking how a template renders requires running the app locally or waiting for a staging deploy.

Locale variants multiply the maintenance surface

Five templates × four locales = twenty files to keep in sync every time branding or copy changes.

Template bugs require hotfixes

A broken link or wrong variable in a production template means an emergency pull request.

Templates as a managed artifact, not source code

Edit in the dashboard, live immediately

Change subject lines, update copy, adjust CTAs — deployed instantly without touching your repo.

Preview with real payload data

Render any template with a test event payload before making it live. Desktop and mobile preview included.

Version history and rollback

Every save creates a new version. Roll back to any previous state in one click.

Brand variables propagate automatically

Update your logo URL once. Every template that references {{ brand.logo_url }} picks it up immediately.

How the workflow changes

  1. 01

    Move your first template

    Create a template in else.events. It can start as a copy of your existing HTML or MJML.

  2. 02

    Connect it to a domain event

    Create a rule: when event type = user.password_reset_requested, render this template.

  3. 03

    Fire the event from your app

    Replace your existing email send call with a POST to /api/events. The payload carries the recipient and template variables.

  4. 04

    Update copy without a deploy

    Next time marketing wants a copy change, they update the template in the dashboard. Done.

Frequently asked questions

Do I have to rewrite my templates from scratch?
No. You can start with your existing HTML and convert it to MJML iteratively, or paste your existing HTML directly as a starting point.
Who can edit templates?
Anyone with dashboard access. Product managers, designers and marketers can update copy without engineering involvement.
Is there an approval workflow?
Templates are saved as versions. You can review changes in version history before making a version active.
What if a template change breaks email rendering?
The preview tool lets you verify rendering before making a version live. If something slips through, roll back to the previous version in one click.

Your first template, out of your codebase today

Move one template. See how copy changes feel without a deployment.

  • Free during public beta
  • No deployment for copy changes
  • Version history included