Not sure if I am alone in this, but I tend to skip straight to demos after skimming the first few lines. I guess it serves as a basic indicator that the code actually works.
I wasn't able to find any working examples from the homepage, even with the updated link. Can you link directly to a demo page or two that uses the library, rather than a Github repo with code that uses the library?
Can someone explain the trend of mixing HTML and JS code that has been increasing lately? We fought for years to get away from that so I'm curious to know what happened to make people think it was suddenly a good idea. I'm not suggesting it's not or that it is permanently bad. I'd simply like to know why it's good after being considered a bad practice for so long?
When building certain applications, it turns out those concerns aren't really separate! It helps a lot to colocate the markup and the code that generates/modifies it.
Like the other commenter said, people realized that separate languages does not necessarily mean separate concerns.
Once you start modifying HTML from JS enough, you start to realize the JS counts as view logic just like the template does. So the division of concerns changed from View (HTML template)/Controller (JS) to View (dynamic, written in JS)/Data (also likely JS).
The thing is, people were effectively writing HTML in JS before too, it's just that it looked like `el.style.color = 'red'` instead of `<div style={{color: 'red'}}>`.
This has some eerie similarities to [Backbone.js](https://backbonejs.org/#View-extend). That's not necessarily a bad thing, because Backbone was doing its level best to compete as a framework in its heyday, but it's still interesting to see how different it would be if Backbone was designed today.
https://mosaicjs.netlify.com contains a lot of broken links. If you really want to promote your library, fix them! Otherwise ppl will focus on your broken windows instead of the value of your product. Thanks for sharing Mosaic.
Would love to see some demos of this library.