UX and JavaScript overhaul