This is a well-written and informative post.
But if I were starting an Intercom-like product today, I would consider Svelte, combined with careful use of utility libraries for the reasons described in the post. It has an essential design well suited for adding things like this to a page with minimum possible JS size.
(This isn’t a complaint though - I’m a huge fan of Angular, React, Vue, and friends. As of mid-2019 these are very well-suited for applications that will be the primary thing on the webpage. Angular has changes underway (“Ivy”) to achieve great compiled output size reduction, I expect it will end up competitive with Svelte while still keeping a very enterprise class features that available as needed. The others may have similar strategic improvements underway, I am not as aware there.)