adding rough js ui, major refactoring needed