It compiles to JS, ARM, and x86, for web, mobile and desktop support respectively.
Also, Dart has code generation so you can write your own language features, like the freezed package which implements algebraic data types even though Dart doesn't have them natively.