Menu

JavaScript MVVM Frameworks

Building Web apps with plain JavaScript, can be a big pain in the ass. Plain  JS and jQuery were used to build complex apps for years, but the development and the maintance came with a lot effort. JavaScript frameworks make your life easier, and offer the chance to create more complex apps with less effort.

What is MVVM?

MVVM (Model View ViewModel) is an architectural pattern based on MVC (Model View Controller) and MVP (Model View Persenter). The pattern’s goal is to separate the UI from the businness logic and the behaviour. You can read a great article here about the details.

Top MVVM frameworks

1. Angular
Angular was developed by Google. It was first released in 2009 and made available as open source framework under MIT license. Angular is the most used JavaScript framework for developing Single Page Web Applications. Tutorial here: http://campus.codeschool.com/courses/shaping-up-with-angular-js/

2. React
ReactJS is a Facebook product, and it’s behind both Facebook and Instagram. ReactJS was first released as open source in 2013 under BSD license. ReactJS is best at rendering complex user interfaces with high performance. You can find a pretty sweet series about ReactJS here: https://laracasts.com/series/do-you-react by Jeff Way.

3. Backbone
It was first released in 2010 as open source JavaScript Framework under MIT license. The good thing about backbone is that it is simple, small size package and easy to learn. You can get started building apps with Backbone JavaScript Framework within no time. A great Tuts+ series about Backbone: http://code.tutsplus.com/series/getting-to-know-backbonejs–net-24408

4. Vue
It was first released in 2014 as open source framework for public use under MIT license. VueJs works with MVVM design paradigm and has a very simple API. Vue demonstrate minimalism to the extreme and allows you to use selective modules, as required. A Jeff Way series about Vue, and Vue with Laravel <3 : https://laracasts.com/series/learning-vuejs

 

Some sources:

Have something on your mind?