Menu

React, etc. Tech Stack

React, Flux, GraphQL, Hack, HHVM...? All of this and more!

Choosing between Angular, React and Vue.js? You can't go wrong.

Angular, React and Vue.js are three popular technologies that are widely deployed and used for creating rich user interfaces for web applications. They're all somewhat of competitors, but at the end of the day they are all comparable and none holds a significant advantage.

All of the three technologies are nowadays all building on the same foundations; Contemporary JavaScript and a component based -architecture. Selecting between these three is now as much as an exercise in branding as it is of technical superiority.

With very similar concepts behind the scenes, these three options are all valid for starting new projects. You might want to favor React.js or Angular due to the experience you've already got in them. On the other hand the sheer simplicity of getting up and running with Vue.js is an attraction to many.

Angular, React and Vue.js are all widely adopted and is not going away in the next few years, so they're safe. So don't fear the FUD (Fear, Uncertainty and Doubt) thrown around about the limited adoption of Angular inside Google or the Patent clauses in React.

If you're in the process of choosing between there, there are a number of simple questions you should consider:

  1. How much experience have I already got with one of these tools?
  2. How complex will my application expecting to be? Will I have mobile apps too?
  3. How long is the expected lifetime of my project?
  4. How experienced is your team? How large is it?

In any case you will want to give a lot of weight in your decision making to point 1, since the experience you've already got with these give you a headstart over any other. Never underestimate the value of solid knowledge of the basics.

For the complexity of applications, Angular 2 or React are likely the best options since there is already plenty of information and examples of these tools used at grand scale. Both of these are a suitable base for extending over to mobile applications with NativeScript, React Native, etc.

On the other hand in points 2 and 3 Vue.js is best suited for projects that require minimum overhead in learning. Especially if you consider the amount of unnecessary complexity baked into Angular 2 and common React.js boiler plate projects. Vue is solid and extensible as well.

In the future going forward with a large team for applications that will be maintained for five-ten years, Angular 2 is a great choice. The opinions offered by a full stack framework, with a solid semantic versioning model and a release schedule are invaluable when reducing developer churn going forward.

So there are really reasons for going for each option, but it's really up to taste and need. Each one is a valid option.

Written by Jorgé on Monday October 24, 2016

Permalink -

« Dgraph has the potential to become a defacto standard for GraphQL powered DBs - YouTube is being rebuilt with Web Components & Polymer »