implemented viewer module basics