Big Frontend refactor