Babel - the transpiller
Nothing is new under the moon. All this terrible fucking mess we call modern webdev could be reduced down to the classic compiler technology (a compilation pipeline) which is, well, half-assed bloatware implemented by a crowd of ignorant amateur coders.
The pipeline might have optimizing stages, such as pipelining of a
The pipeline could be arbitrary long, given that all the transformations preserve semantics, which means math-like substitution of equal for equal (for which so-called type-consistency is just another fancy word.
This is exactly how Flow - a plug-able external static type annotation system works.
sudo npm i -g babel-cli babel-eslint babel-preset-react