Any ambitious web app needs to manage state, so you need to solve for that. Rolling your own is of course totally doable, but is an opportunity cost to solving your unique user problems in your app. State management, and other things your app will need are commoditized, so it is better focus on the unique value you have to bring.
On the language front, TypeScript gives you a more modern, yet flexible, language.