Guide to the Many Client-Side Frameworks

frontend client side programming
There are two sides to web development – the server-side and the client-side. A server-side framework typically uses a programming language with a compiler and runs on a web server, such as Apache, ASP.NET or many others. A client-side framework typically is a type of JavaScript library and runs in a Web browser. To simplify your choice of a JS framework to utilize client-side development, ideally you will want to limit your options to several broadly supported solutions. For client-side development, a solid list of JavaScript frameworks includes React, Angular (Angular 2 or higher), Vue, Backbone, and Ember. First, modern frontend JavaScript frameworks must respect the Web Components specification. In modern client-side development, you will build custom HTML elements which all of the frameworks we’re reviewing support Web Components. Second, a solid JavaScript framework should have its own ecosystem. Ready solutions aim at solving various problems of client-side development such as routing, managing app state, and communicating with the backend, to name a few. Here is an overview of the major client-side frameworks to consider.

React 

React became very popular in the JS arena a few years ago to become a clear leader. React has what is called the reactive approach and a functional programming methodology. React created what at the time were very unique concepts and approaches to front end web development. To get started with React, you will need to learn how to work in a component-based architecture called JSX and unidirectional data flow. In this case, the unidirectional data flow is implemented by Flux.

Angular 2 and Higher

Angular 2+ was a major step forward in the development of the Angular framework. Starting as a solid Backbone competitor, AngularJS (read: Angular 1.x versions) nearly became obsolete when React came out. With version 2, Angular has substantially changed its architecture to become more competitive with React.

Vue

Vue is very much a mix of concepts taken from Angular and React. For example, Vue enables the developer to store component logic and layouts along with stylesheets in the same file which is similar to React. There are many other examples. Vue can be used for building user interfaces and single-page applications.

Backbone and Marionette

The Backbone framework is a RESTful JSON interface and what is known as an MV* framework. The MVC architecture is partially implemented by Backbone. Backbone is a lightweight framework, as its only critical dependency is on the Underscore.js library as well as jQuery for use of the full library. It was designed to be used primarily for developing single-page web applications and also for keeping various components of web applications properly synchronized. The Marionette framework simplifies your Backbone application code with robust views and architecture solutions.

Ember

Ember is an older framework like the Backbone and Angular JavaScript frameworks. In the word of their web site its “battle-tested”. Even though it may be older, it doesn’t mean its not current or useful. With Ember you can implement component based approaches to application development similar to the other listed here. Many aspects of how Ember works have in fact been implemented by the other frameworks. Useful Related Links: We hope you found this post useful. If you have questions, please feel free to contact us.