make view public
don't use closure
simplified template