seperated 'view' module from 'frontend' so it can be tested/used from database