Skip to content

Commit 9661ee4

Browse files
authored
Merge pull request #30 from dcondrey/docs/framework-comparison
docs: add the compiler-framework comparison table
2 parents e9bcb54 + cee2507 commit 9661ee4

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,29 @@ Most frameworks quietly drop the awkward clients because supporting them is tedi
6060

6161
</div>
6262

63+
### Against the compiler frameworks
64+
65+
Checked against each project's own documentation, 2026-08-22. These are all good
66+
tools; the axis that separates them is whether a compiler stands between you and the
67+
markup that ships.
68+
69+
| | **html-email** | [MJML](https://github.com/mjmlio/mjml) | [Maizzle](https://maizzle.com) | [React Email](https://github.com/resend/react-email) |
70+
|---|:-:|:-:|:-:|:-:|
71+
| You author | HTML | `<mj-*>` markup language | Vue SFCs + Tailwind | React/JSX components |
72+
| Build step to get HTML | optional (concatenation only) | required (compile) | required (Vite pipeline) | required (render) |
73+
| Runtime dependencies | 0 | npm package | Node + Vite + Tailwind | Node + React |
74+
| Ships markup you wrote | yes | no — compiler output | no — pipeline output | no — render output |
75+
| Hand-editing the shipped HTML | expected | round-trip is lost | round-trip is lost | round-trip is lost |
76+
| CSS inlining | not needed (styles authored in place) | automatic | configurable transformers | via Tailwind component |
77+
| Lints *other* tools' output | yes — point it at any HTML email | no | no | no |
78+
79+
The trade is real and runs both ways. A compiler gives you components, scoping, and
80+
a smaller surface to get wrong, and for a large template library that is worth a lot.
81+
This project takes the other side: the HTML in the repository is the HTML that
82+
arrives, so a client-specific quirk is fixed where you can see it, and nothing has to
83+
survive a regeneration. The [28 documented quirks](./docs/quirks.md) are the reason
84+
that trade is worth making here.
85+
6386
## How it builds
6487

6588
```mermaid

0 commit comments

Comments
 (0)