сколько времени писали писали, а сейчас нельзя стало, ну на крайний случай flow,type уес
я всегда привожу в таких случаях пример gmail - приложение, которое в 90х школьник за 2-3 дня (если не считать всякого там дизанерства) написал бы на дельфях. Попробуйие воспроизвести это на js чтобы прочувствоать мой тезис про важность статических гарантий. С фреймворками на подобие этого Vue и ангуляра на самом деле всё ещё хуже чем с просто js - любая ошибка в шаблонах ни как не ловится в рантайме, оно "просто не работает"