Wasn’t CoffeeScript the preferred way to write JS in Ruby on Rails for years?
JSX is kind of xml done "right". Differences between children and attributes in xml is very hard to grasp, but JSX has a much better defined structure to it and is super well suited to generate html because of that.