Cr.elm - innerHTML be Gone!
For the sake of elegance and simplicity and correct attachment of events you should be using document.createElement then document.body.appendChild; EXCEPT what a god awful amount of writing and lines of code and space that takes up.
Take the following example. We want to create a link. Look at all these steps! I haven't even had the time to d.setAttribute('href','#yet');
all of that just to get the equivilent of the html -- plus on older browsers the listeners won't work until after the element is appended -- plus the code does not represent the structure of HTML, there is no obvious way in which the create element and set attribute's translates to HTML. What a mess... well an elegant mess... but it's still not as nice as this:
Line breaks were added to illustrate the nesting to show just how familiar the nesting of Cr.elm is to the output HTML.
You can find more info here: Create Element on GitHub
At some point the JSON encodings will allow for some interesting symmetry between client side and server side html template code - allowing pages to be generated either client side or server side - from the same Cr.elm encoding.
You can find more related libraries and a minified version on github github.com/qufighter/Cr