When using JHipster, you have the option to choose between using Angular, React, and Vue.js as the client-side framework. Do not choose something just for its hype—choose it based on your requirement, team composition, and familiarity:
- If you come from a heavy Java/Spring background, then Angular or Vue.js will be much easier to follow and work with
- If your application requires heavy state management and shared state, then React or Vue.js would be a more natural fit
- If you are planning to build a native mobile client for your application, then React is a good choice for this, with React Native allowing you to reuse a lot of code between your web and mobile application
- If your application depends heavily on HTML pages produced by a design team or a third party, then Angular or Vue.js will be much easier to integrate than React
- If you are familiar with AngularJS, then you might feel at home with Vue.js
If you need a lot of widgets that are not part of standard Bootstrap, then use an existing widget library, such as PrimeNG or VMware Clarity, rather than assembling widgets from different origins; however, if you only need a few more widgets on top of Bootstrap, then stick to Bootstrap and use a Bootstrap-compatible widget for Angular, Vue, or React.
Regardless of what you choose, follow the guidelines and best practices from that project's community.