React is used to create reusable user-interface components for each state, that can automatically update and render data without the need of reloading the page. Remember though, that React is a library and not technically a framework. It is mainly used to handle “V” (view) layer in the MVC(Model View Controller) model for web and mobile apps. Apart from web applications, React can also be used to create native mobile application supported by both android and iOS.
Cons Of Using REACT
Bloated and complex – Many developers might find react too complex and bloated for their purpose as compared to Vue JS. Added complexity that coms align with react might be unnecessary for small scale projects
JSX – The use of JSX adds another layer of complexity. JSX is a pre-processor, it adds XML syntax extension to JS. Although JSX helps to code react in a safer and faster manner, it is difficult to grasp for new developers.
Need for Assembly-Tools – React requires a wide array of assembly tools to function properly and be compatible with other libraries and frameworks.
SEO problems – webpages built with react are known to face issues with indexing by search engine crawlers/bots.
The key focal point of attraction of Vue is its progressive nature which helps it to adapt to developer’s needs. It is built on concepts from other frameworks and libraries like angular and react and offers a compact lightweight solution incorporating all the best features and practices.
Cons Of Using VUE
Poor Support: Vue doesn’t offer a big resource collection to new users on a scale similar to that of angular and react. Considering a comparatively lower market share, developers who are new to Vue js might not find adequate support and resources.
Small Community: A large chunk of Vue developer community is from non-English speaking eastern European countries. Community engagement used to be fairly low, However that is expected to change in 2019 as Vue saw a mammoth rise in popularity by the end of 2018.
Angular enabled developers to build highly efficient and robust Single page applications rather than static HTML websites. Google completely revamped the original framework and released a radically different and improved typescript Angular 2. Angular 2 introduced component-based architecture, improved dependency injection, logging service and inter-component communication.
Version 7 has introduced vast improvements in Performance, Angular Material & CDK, dependencies for Typescript version 3.1, RxJS 6.3, Node version 10. Virtual Scrolling and content projection have also been introduced.
Enhanced RXJS has led to lightning fast compilation time of approx. 2.9 sec and modified start HttpClient.
MVVM (Model-View-ViewModel) allows developers to work on the same application and data pool in isolation.
Native mobile app: NativeScript powered by angular enables development of native mobile apps for both iOS and android.
In Dec 2011, Yehuda Katz, the brains behind jQuery launched ember. Ember is an opinionated framework which works on the principle of MVVM (Model-view-viewmodel) pattern. It is packed with Glimmer engine that increases rendering speed. Prominent features include data binding to link two properties and inspection tool for debugging errors.
Ember templates: One of the most striking features of ember is templates which help to create stunning UI. Templates are coded with Handlebars language which drastically reduces the necessary code. Templates are updated automatically as soon as moderation is made to their underlying data.
Ember CLI: Ember-CLI is a command line addon that is packed alongside Ember stack. Ember-CLI provides support for techs like Sass/Less, CoffeeScript, Handlebars etc.
Ember is shipped with Inspector tool to helps with debugging
Convention over Configuration: Ember is based on Convention over Configuration (CoC). This helps devs to focus more on functionality and building apps faster and worrying less about planning High performance
Polymer.js enables developers to build their own custom HTML elements.
Supports both One-way and two-way data binding.
Cross browser compatibility: polymer was designed especially with keeping cross browser compatibility testing in mind.
Express is an open-source standard framework for Node.js. Express is used to create server-side web applications and APIs. It is critically acclaimed for its simplicity, flexibility, scalability and minimalism by node js developers worldwide. Launched by TJ Holowaychuk in Nov 2010, Express JS is primarily used alongside Angular or react and forms the server-side framework layer in MEAN or MEARN stack.
Plugins: Unlike meteor.js that is plagued with poor plugin functionality, Express supports a wide variety of powerful plugins to assist developers.
Robust: Not only is express.js minimalist and lightweight in size, it is less prone to errors.
Reusability: Built in router in Express.js promotes code reusability to speed up workflow.