asynchronously create DOM with a nice syntax