On the whole brackets/templating issue I like to use the gem arbre
html = Arbre::Context.new do
h2 "Why is Arbre awesome?"
li "The DOM is implemented in ruby"
li "You can create object oriented views"
li "Templates suck"
puts html.to_s # =>
<h2>Why is Arbre awesome?</h2>
<li>The DOM is implemented in ruby</li>
<li>You can create object oriented views</li>
I haven't tried this with Clearwater but with Ruby being Ruby I imagine it wouldn't be hard to disable the existing HTML code gen code and just use arbre.
After watching a bit of the video Aston posted I see the code it has generates DOM nodes rather than HTML.