rewrite networkrender as a function
implement imageviewer