React vs YUI Library: What are the differences?
React is an open source tool with 135K GitHub stars and 25.1K GitHub forks. Here's a link to React's open source repository on GitHub.
What is React?
What is YUI Library?
Need advice about which tool to choose?Ask the StackShare community!
Why do developers choose YUI Library?
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using YUI Library?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Recently I have been working on an open source stack to help people consolidate their personal health data in a single database so that AI and analytics apps can be run against it to find personalized treatments. We chose to go with a #containerized approach leveraging Docker #containers with a local development environment setup with Docker Compose and nginx for container routing. For the production environment we chose to pull code from GitHub and build/push images using Jenkins and using Kubernetes to deploy to Amazon EC2.
We also implemented a dashboard app to handle user authentication/authorization, as well as a custom SSO server that runs on Heroku which allows experts to easily visit more than one instance without having to login repeatedly. The #Backend was implemented using my favorite #Stack which consists of FeathersJS on top of Node.js and ExpressJS with PostgreSQL as the main database. The #Frontend was implemented using React, Redux.js, Semantic UI React and the FeathersJS client. Though testing was light on this project, we chose to use AVA as well as ESLint to keep the codebase clean and consistent.
I found Heroku to be a great option to get ExpressJS up and running with very little hustle. The free tier is great, but I'd recommend to set up a cronjob to visit your site every few minutes so that the server stays awake. Netlify was the option to host the front-end because doing the server side rendering on #Heroku would have taken a little more time than I'd like to. For the moment pre-rendering the app with prerender-spa-plugin is enough to help with #seo. Puppeteer was my choice over other options because it made it easier to scrape websites made on ASP.NET which is what I needed in this case. And Vue.js is my top choice at the moment because it's really beginner friendly and it has a lot of the features I like about Angular 2 and React. vuex is a must in most of the app I build.
For those who want to develop business in China, Vue.js would be your first choice. I never thought Vue.js is better than Angular 2 or React , but for project language choosing, sometimes you should not only consider technology advance, but also must consider human resource market.
In China, there are far more engineers familiar with Vue.js than React and Angular, that means you can easily hire some front end engineers with much cheaper price. The reason why Vue.js is so popular in China is just because the community, as Vue.js author You Yuxi is Chinese, the community around Vue.js is mainly in Chinese language and most engineers speaks Mandarin, thus they can get questions and problems solved at first time.
From technical side, Vue.js is more like a simplified Angular, syntax are mostly same,
v-for. The most convenience part is Vue.js put
css in one single
vue file so that you will not have to create a separate folder to include 3 files as Angular does.
To be frankly, I love Vue.js especially when I need to quickly create a small project contains only 1 or 2 pages even 5 pages, Vue.js would be the best choice, it's small and fast. For a really big and huge project, I will consider Angular, after all, there are far more complicated and interesting plugins to play with, Angular need more time, more code, more complex, but we senior engineer is living for some sophisticated code which only we can understand and set barriers for other beginners, right?
For developing our #frontend applications, we decided to use Vue.js . Being such an easy to learn library, compared to React for example, it made everything so easy. At first we started with Polymer but the existing tooling and small community at the time made us look for alternatives.
I use React because I think it is the one that embraces the most the functional component design.
New versions of React are on the right track.
Having to work with Vue or Angular is a lot of pain for me, especially because I'm used to the simplicity of React (which comes with the great price of a high learning curve). Also, the use of the Flux Pattern is so much easier with React, being designed as a one way data flow, than with its two foremost competitors.
Cheers to the React Team, and thank you very much !
I recommend using Angular 2 when moving from Angular 1 if you are looking for a fully featured framework solution. Neither Vue.js nor React just work out of the box and require creating your own components from scratch as well as the kind of support architecture available in Angular 2 out of the box. However if you are looking for something lightweight to add reusable components to an existing application Vue.js and React are more ideal to that end.
I use React because it provides a high level of flexibility to architecture the front end app having the posibility or not to incorporate other libraries such as State Management, Routing or Form Validation, among others. Unidirectional flow and component reutilization is another important advantage.
Back in 2015, my company had a back-office dashboard that was originally built in AngularJS 1. Since Angular 2 presented drastic changes we decided to rethink the options and we looked at React and Vue.js. Besides, at the time, Vue had basically only one developer, its structure (100% oriented to components) and also its backward compatibility focus (Angular 1 to 2 no more) we preferred it against React cause it seemed more straightforward, clean and with a small learning curve. Now 4-5 years later we are very happy with our choice.
I find using Vue.js to be easier (more concise / less boilerplate) and more intuitive than writing React. However, there are a lot more readily available React components that I can just plug into my projects. I'm debating whether to use Vue.js or React for an upcoming project that I'm going to use to help teach a friend how to build an interactive frontend. Which would you recommend I use?
I've used both Vue.js and React and I would stick with React. I know that Vue.js seems easier to write and its much faster to pick up however as you mentioned above React has way more ready made components you can just plugin, and the community for React is very big.
It might be a bit more of a steep learning curve for your friend to learn React over Vue.js but I think in the long run its the better option.
Having developed in both Vue.js and React, I agree with your assessment of Vue. It does feel light and easier to understand and therefore learn. Seeing that Vue has some genetic roots with React, I would say start your friend out on Vue. If they need to learn React later, that should give them a good foundation. If you have a Pluralsight subscription, look for my course on Vue.js and feel free to use the demo project as a starting point.
I chose to use Vue.js a few years ago mainly for the easy learning curve. I have no experience with React, so I won't make any comparison here. Regarding available components, I never felt locked in because of Vue when looking for components. It happens that a component I wish to use is not available as a Vue component (and nobody published any Vue wrapper for it), but in such cases I was able to quickly hack a Vue wrapper component. In the end I don't think a decision to choose one framework over another should be made solely because of the number of components available. (And not all components in either framework is maintained, bug free, documented or easy to use)