Emacs (even on the TTY), can do a decent job of rendering markup using it's built in EWW browser. Works pretty well, at least for most of the content I'm looking for.
Using it with Notmuch or mu4e is not the easiest thing to do, but it works pretty solidly.
For when eww doesn't work, this snippet will let you type "c v" in a notmuch mail buffer to render the html content of an email in an external browser:
Rendering HTML emails is fine, IMO, unless you want images. (I use mutt with w3m auto-view.) What’s more difficult is authoring/replying to HTML emails.
You can configure aerc to pass the email contents through an intermediate program depending on the MIME type. I believe it renders HTML through w3m by default or something like that. Of course it isn't full rendering with CSS and whatnot, but it is pretty good for most mails.
Yeah, I get that, but it's still not a great experience, and inconsistent. It would be cool to see something that uses iTerm's support for inline images: https://iterm2.com/documentation-images.html
Not sure how practical that actually would be, but I can dream.