First thing is to identify whether you're creating a web app or a web site. The latter being characterized by content-driven approaches and workflows around HTML fragments received from editors, aggregators, syndicates, product catalogs, or other third-party sites. These sites tend to be PHP-heavy, but don't have to be; a competent markup processor or "isomorphic" web composition processor (running both server-side and in the browser such as mine based on SGML no less) is specifically designed for this purpose, with straightforward and sophisticated, HTML-aware type checking, composition, templating, and escaping. For the former category of highly interactive web apps, my recommendation would by React or Vue, based on the mindshare of these frameworks. Don't let your devs use these frameworks for the sake of padding their resumes, and try to pin down your requirements and the necessary skill profiles for your team. It might not make sense for an internal app to be created using React when this will split your team into frontenders and backenders with completely disjoint stacks, increased coordinations, and loss of agile job rotation.