Vue vs. React vs. Angular: Developers Share Their Favorite Tech

Written by Janey Zitomer
Published on May. 07, 2020
Brand Studio Logo

There might not be a “perfect” answer to which library or framework is best for tackling front-end web development projects, but that doesn’t mean engineers don’t have their favorites.

In fact, the four developers we spoke with had strong opinions on the usability of Vue vs. React vs. Angular. 

At Cambridge Semantics, VP of Engineering and Support Simon Martin uses React to support Anzo, which will allow users to add data layers to their workflows for data cleansing, transformation and relationship linking. Martin praises React for its ease of onboarding and broad developer support. 

Meanwhile, the PathAI team has found that Vue gives their engineers the most flexibility, allowing for non-TypeScript components. 

Yet in terms of productivity, Payfactors Software Engineer Adam Colson prefers Angular for its larger frameworks. 

“Angular simply provides more and requires developers to write less code,” Colson said.

Developers across Boston guided us through the pros and cons of each option, comparing their key features, industry popularity, performance and more. 

 

Cambridge Semantics
Cambridge Semantics
Image of Edward Orsi
Edward Orsi
Front-End Team Lead • Kensho Technologies

While Front-End Team Lead Edward Orsi thinks that, ultimately, Vue, React and Angular are all solid choices for development, fintech company Kensho relies on React. Orsi said that its widespread popularity allows his team to attract top talent and leverage extensive open-source libraries.
 

Vue vs. React. vs. Angular: Which is your team’s preferred programming tool? 

We have several applications under development. The team prefers React for all of them because of its rich ecosystem with broad developer support as well as high-performance rendering. We are big fans of functional components and the new hooks API. 

 

Tell us about the most recent project you worked on using this tool. 

Our two most recent projects include a research and analytics app and a document search, viewing and annotation platform. React was the right choice for both projects due to the ease of new developer onboarding, extensive open-source libraries and the maintainability of the declarative style. 

React really shines in this type of complex user interface space. A less flexible tool would struggle to provide the necessary escape hatches to work directly with document object model APIs in a reasonable way.

While Angular has some pros, developers had to learn the Angular way’ of doing things.’’ 

Do you have any experience using one or more of these other technologies? 

The team and I have worked with Angular extensively in the past, with a few folks dabbling in Vue. While Angular has some pros, developers had to learn the “Angular way” of doing things. 

With React, developers can stick closer to ES6+ best practices and jump right into functional components. Vue is popular for smaller side projects where you can reap the advantages of a terser and more opinionated framework without encountering the eventual trade-off on flexibility. 

The strengths of modern frameworks outshine the legacy Ext JS, Knockout and Backbone, but refactoring should be done on a case-by-case basis.

 

Image of Peter Skinner
Peter Skinner
Senior Software Engineer • PathAI

Although Senior Software Engineer Peter Skinner has only dabbled in Angular and React, he’s found that Vue is a better option for the way he thinks about projects. The PathAI developer said the all-in-one syntax of React components can be difficult to use and starting Angular projects can be tricky.

 

Vue vs. React. vs. Angular: Which is your team’s preferred programming tool? 

When we initially picked Vue as our framework of choice, a lot of factors went into that decision. While some of our developers were experienced with React or Angular, others had not used any modern frameworks before. With such a diverse background of engineers coming to the table, our main priority was to find a framework that was easy to pick up, familiar to most and allowed all of our developers to get going quickly. 

We found that Vue gave our engineers the most flexibility, allowing for non-TypeScript components with familiar syntax for both React and Angular developers. It was a middle ground between all of our options but also became extremely useful for our products. 

 

Tell us about the most recent project you worked on using this tool. 

One of our main applications of Vue at PathAI is an image annotation application. This application allows for live drawing over images in a canvas element. Vue has helped us significantly in the process of making this application, thanks to features like partial object updates, single-file components with scoped SCSS and separated API and store layers. 

Vue allows for objects in the store to be modified and updated while still having their values watched and output to the DOM. This is particularly important for us because we are using a considerable amount of data, which is being modified constantly. 

Additionally, the separation of concerns Vue provides in its single-file components allows for easy data manipulation and clear goals for each section of the code. As someone who has been struggling with selector priority in Vanilla CSS for a long time, component-level scoping of CSS-style blocks was a lifesaver. 

Finally, Vue was easy to set up with our REST API. Vue is not prescriptive about how you approach most problems within its framework, and that flexibility allows you to create simple and clean implementations quickly. 

I use Vue as a default due to how flexible the framework has been in allowing me to pivot.’’

Do you have any experience using one or more of these other technologies? 

I have only dabbled in Angular and React, but I’ve found Vue is a better option for the way I think about projects. For both work and side projects, I use Vue as a default due to how flexible the framework has been in allowing me to pivot to exactly what I need to build quickly and efficiently. 

When I’ve used React in the past, I personally found the all-in-one syntax of the components to be difficult to use. React is also not a full framework, requiring other systems that are not necessarily officially supported by the React developers to work fully. I can definitely see how it can be a useful tool in web development, especially with how widely adopted it is currently. But overall, it does not fit my style of programming. 

I’ve found Angular is the most similar to Vue. In terms of scalability, I believe Angular is better than Vue as a codebase as a team starts to expand. Angular forces a separation of components to a near-extreme level, which is helpful in making focused code. Unfortunately, I’ve found that starting Angular projects can be quite tricky. Without knowing your codebase end goal, the structure of Angular can become a hindrance. 

 

Image of Simon Martin
Simon Martin
VP of Engineering and Support • Cambridge Semantics

When Cambridge Semantics engineers first started looking for a third-party library they could integrate into their framework, they prioritized extensibility and ease of manipulation. According to Martin, those priorities haven’t changed over the years. Developers currently use React for routing because of its integration capabilities and flexible nature.  

 

Vue vs. React. vs. Angular: Which is your team’s preferred programming tool?

Cambridge Semantics has been building a client-side semantic web JavaScript framework for over 10 years. Different parts of the framework are either made using third-party libraries or implemented by our team. 

In 2008, we implemented our own rendering engine for our client-side semantic graph datastore. As data-binding and rendering technologies became more mainstream, we decided to use a third-party library for this task rather than rolling our own. The first third-party library we adopted was Knockout.js. We were able to replace the observables used by Knockout.js with in-house ones. 

We’ve also experimented with Dojo’s form-binding mechanism, as well as native components. The difficulty with every library is finding a clean way to glue it into our existing framework. We are currently using React. It is fast, powerful, flexible and easy to integrate because React is a library, not a framework. 

Using a framework like Angular would provide too many unnecessary capabilities. Vue is also an awesome library, but we have already integrated with React and do not see a strong advantage to moving.

 

Tell us about the most recent project you worked on using this tool. 

We have been building Anzo, our platform for discovering and integrating data to create analytics-ready datasets. The front-end user interface of this system is entirely written using our internal JS framework, utilizing React for the rendering. Where possible, we have tried to use popular third-party libraries like React. Not only is React well supported by an online community, it is also easier to find and hire people with React development skills. 

React well supported by an online community.’’

Do you have any experience using one or more of these other technologies?

All three technologies are powerful and useful in specific cases. It’s important to choose the right tool for the right job.

 

Image of Adam Colson
Adam Colson
Software Engineer • Payscale

If Colson had to pick a framework to rely on, he’d choose Angular. While he believes in the benefits of Angular’s ubiquitous application features, he gives React credit for its smaller API surface. At Payfactors, developers are using Angular to create a new greenfield application that complements the compensation data management company’s existing application’s feature set.

 

Vue vs. React. vs. Angular: Which is your team’s preferred programming tool?

Our team prefers Angular. We are a .net shop on the server, and many of the patterns we utilize in the back end — like strong typing, service layers and dependency injection — are first-class citizens in Angular. 

The ecosystem is another big draw, as we have access to first-party conveniences that enable us to do our jobs faster. This means we don’t have to shop around, debate and plug in ubiquitous application features such as routing and commonly used presentational formatting. We use what Angular provides instead. Plus, observables are great tools that couple nicely with reactive programming once you get the hang of them.

 

Tell us about the most recent project you worked on using this tool.  

My team is working in Angular to create a new greenfield application that complements our existing application’s feature set. So far it’s been a great fit. We’re able to quickly introduce prototype features with the help of the Angular CLI and other tooling. Iterating on initial designs and incorporating richer feature sets has gone smoothly, as strong typing and an impressive unit test system catch run time defects before they get to our QA.

The primary benefit of working in React over Angular is the smaller API surface.’’  

Do you have any experience using one or more of these other technologies? 

I have React experience from a previous company. React was designed to provide developers with an optimized view layer and is not a full-feature set for addressing common application requirements. To my knowledge, React does not have first-party solutions for common application features such as fetching data via XHR requests and localization, so it’s less opinionated.

I think the primary benefit of working in React over Angular is the smaller API surface. This allows teams with no prior experience to become proficient in React quicker than they might in Angular, as there is just a smaller framework to understand. Angular is bundled with TypeScript and observables by default, which also bumps the learning curve compared to React. Over time though, I think productivity in Angular equals and possibly exceeds smaller frameworks like React once acclimated. Angular simply provides more and requires developers to write less code.

 

Responses have been edited for length and clarity. Images via listed companies.