{"articles":[{"slug":"rendering-untrusted-html-email-safely","title":"Rendering untrusted HTML email, safely","subtitle":null,"summary":"Close's Phil Freo explains how the sales CRM renders synced, untrusted HTML email safely inside its single-page app entirely on the client side, comparing server-side sanitizing and other approaches to the sandboxed iframe technique it uses, along with handling iframe height and a secure WYSIWYG editor for composing.","content_type":"blog_post","language":"en","canonical_url":"https://making.close.com/posts/rendering-untrusted-html-email-safely/","author":{"name":"Phil Freo","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Close","url":"https://making.close.com/","listing_slug":"close","listing":{"slug":"close","name":"Close","listing_type":"company","url":"https://listedstartups.com/companies/close"}},"topics":[{"name":"Security","slug":"security","url":"https://listedarticles.com/topics/security"},{"name":"Web Development","slug":"web-development","url":"https://listedarticles.com/topics/web-development"},{"name":"Email","slug":"email","url":"https://listedarticles.com/topics/email"},{"name":"Frontend","slug":"frontend","url":"https://listedarticles.com/topics/frontend"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":1910,"reading_minutes":8,"published_at":"2021-09-29T00:00:00.000Z","added_at":"2026-10-20T08:10:05.656Z","updated_at":"2026-10-20T08:10:05.656Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/rendering-untrusted-html-email-safely","markdown_url":"https://listedarticles.com/articles/rendering-untrusted-html-email-safely.md","example":false,"citation":"Phil Freo, Close. \"Rendering untrusted HTML email, safely.\" 29 Sept 2021. https://making.close.com/posts/rendering-untrusted-html-email-safely/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://making.close.com/posts/rendering-untrusted-html-email-safely/"},"snippet":null,"score":null}],"total":1,"count":1,"next_offset":null,"has_more":false,"query":{"q":null,"content_type":null,"topic":null,"publisher":"close","about":null,"author":null,"language":null,"sort":"newest","limit":20,"offset":0}}