New frontend and separating JavaScript so that it is cleaner and easier to understand.