javascript DSL for HTML generation