added app view template to decouple from dom elems