feat(js): restructure MVC
feat(js): restructure MVC