BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Research JavaScript Frameworks in the Real World

JavaScript Frameworks in the Real World

Bookmarks

InfoQ's research widget has been deprecated and is no longer available.

JavaScript frameworks can be an essential tool for advanced JavaScript programming. While one could do everything needed purely with just the JavaScript code, without the need of a framework, both they and JavaScript libraries provide some very useful foundations to build on. 

We asked you back in 2013 what JavaScript MVC frameworks you thought were ready for the real world, and you voted in your hundreds. A lot has changed in the last two years.

While some have dropped almost out of sight, others have sprung up and flourished.

Options

  • AngularJS: an open-source web application framework maintained by Google and a community of individual developers and corporations that aims to simplify both development and testing of singe-page applications. Angular uses an MVC framework, along with components commonly used in rich internet applications.
  • Backbone.js: a lightweight JavaScript library with a RESTful JSON interface, Backbone is based on the MVP and Actor model application design paradigm and is designed for developing single-page web applications.
  • Capuccino: an open source application development framework for developing web applications that look and feel like  Mac OS X desktop applications. Cappuccino consists of two distinct components: the Objective-J programming language, and an object-oriented library that is the Objective-J port of several Cocoa frameworks.
  • D3.js: a JavaScript library using digital data to drive the creation and control of dynamic and interactive graphical forms running in web browsers. D3 is a tool for data visualisation in W3C-compliant computing, and makes use of the widely implemented SVG, JavaScript, HTML5, and CSS3 standards.
  • Echo: a platform for building web-based applications using a component-oriented and event-driven API. Developed by NextApp, Echo helps to build applications that approach the capabilities of rich clients.
  • Ember.js: an open-source client-side JavaScript web application framework based on MVC patterns. Ember allows developers to create scalable single-page applications by incorporating common idioms and best practices into a framework that provides a rich object model, and automatically-updating templates powered by HTMLBars.
  • Ext JS: a pure JavaScript application framework for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting. Ext JS was originally built as an add-on library extension of YUI, and includes interoperability with jQuery and Prototype.
  • Google Web Toolkit: an open source development toolkit created by Google, GWT allows web developers to build and maintain complex JavaScript front-end applications in Java.
  • Handlebars: a semantic web template system, started by Yehuda Katz of Ember.js. Handlebars is a superset of Mustache, and can render Mustache templates in addition to Handlebars templates. Handlebars adds extensibility and minimal logic., distinguishing it from Mustache, a logicless templating language.
  • JavaWebToolkit: an open source widget-centric web application framework for Java. JWT aims to benefit from the stateful component model used in desktop applications APIs, applied to web development, instead of the traditional MVC model. Instead of using MVC at the level of a page, MVC is pushed to the level of individual components.
  • jQuery: an open source cross-platform library, jQuery is designed to simplify the client-side scripting of HTML. jQuery is designed to make it easier to navigate a document, select DOM elements, create animations, handle events, and develop Ajax applications.
  • Kinetic.js: an HTML5 Canvas JavaScript framework, Kinetic extends the 2d context by enabling high performance event detection for desktop and mobile applications. While active development, it has been forked as Konva.js.
  • Kendo UI: an HTML5, jQuery-based framework for building web apps. Kendo features various UI widgets, including a rich data visualization framework, an auto-adaptive mobile framework, and tools for HTML5 app development, such as data source, templates, MVVM, drag-and-drop component.
  • Knockout: an open source, standalone JavaScript implementation of the MVVM pattern with templates. Knockout features Declarative bindings, Automatic UI refresh, Dependency tracking and Templating.
  • MooTools: an open source lightweight, object-oriented, JavaScript framework. MooTools aims to take advantage of the flexibility and power of JavaScript in a way that emphasises greater modularity and code reuse.
  • ReactJS: an open-source JavaScript library for creating user interfaces. React is maintained by Facebook, Instagram and a community of individual developers and corporations, and aims to address challenges encountered in developing single-page applications.
  • Rialto: a cross browser Ajax-based JavaScript widgets library that aims to ease the access to Rich Internet application development to corporate developers.
  • Socket.IO: a JavaScript library for realtime web applications. SocketIO enables realtime, bi-directional communication between web clients and server, and consists of a client-side library that runs in the browser, and a server-side library for node.js.
  • Underscore.js: a JavaScript library which provides utility functions for common programming tasks. While Underscore is similar in features provided by Prototype.js and the Ruby language, it instead opts for a functional programming design instead of extending object prototypes.
  • Durandal: a lightweight JavaScript framework that aims to make building SPAs simple and elegant. Coming with strong support for MVC, MVP and MVVM, Durandal is on built on libs like jQuery, Knockout and RequireJS.
  • Aurelia: An open source next-generation JavaScript client framework. Written with vanilla ES6 and ES7, Aurelia is transpiled and polyfilled to work on today’s Evergreen browsers
  • Meteor: An open-source real-time JavaScript web application framework written on top of Node.js. Meteor allows for very rapid prototyping and produces cross-platform (web, Android, iOS) code.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • JavaScript Frameworks 2015

    by Jeremy Danyow,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Thanks for putting together the JavaScript framework list at www.infoq.com/research/javascript-frameworks-2015 .

    I'm writing to let you know about a few heavy-hitters that were missed:

    Durandal: durandaljs.com/
    A widely used single page application framework.

    Aurelia: aurelia.io
    The successor to Durandal, in early preview stages right now.

    Breeze: www.getbreezenow.com/
    Rich data for javascript apps

    Full disclosure: I'm a core contributor on the Aurelia project. You don't have to take my word for it though, check out the tag stats for these projects on stackoverflow or compare the gitter chat participants for Aurelia (gitter.im/Aurelia/Discuss) to another framework like Angular (gitter.im/angular/angular.js) if you want to get a sense of the buzz/breadth of use.

  • Page issues

    by Baljeet Sandhu ,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The analysis does not show even after voting and authenticating. Chrome.

  • Re: Page issues

    by Charles Humble,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Hi Baljeet,
    Sorry about this. We do have some bugs in the voting widget. After the pop-up window closes if you can't see the analysis try hitting refresh on the browser and you should then be able to see it.
    If you've been away from the poll for a while you may be asked to re-authenticate.

    Charles Humble
    Head of editorial, InfoQ

  • Re: Page issues

    by Jose Bencosme,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I'm not able to see it either.

    Tried "voted already" many times.

    Even logged in to InfoQ.

  • dojo

    by Deno Vichas,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    why isn't Dojo on this list. It's better than most of the ones you have?

  • Re: dojo

    by James Chesters,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Unfortunately, we couldn't include everything on the list that we wanted to, and some really great toolkits had to be left out. Thanks for suggesting Dojo, though, we'll consider it for our next edition.

  • W2UI is missing

    by Hans Grüber,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Even if it's less known, W2UI w2ui.com is quite good and we are evaluating it for some production apps: it has many of the components only ExtJS and KendoUI has, but it's much easier to learn - the code is very clean.

  • Re: W2UI is missing

    by Paul Davidowitz,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Hans, what was the result of your evaluation of W2UI, if I may ask? I myself am considering using it with Meteor.

    - Paul

  • No Vaadin or Polymer?

    by Ryan McDonough,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I'm surprised that GWT made the cut but not Vaadin. Polymer is also notably absent. It's also odd that tools like Cappuccino, which is Mac-specific and based on Objective-C when Apple is moving to Swift, made the cut. Also, Kinetic.js is now unmaintained.

  • Missed top frameworks in 2015

    by jakkaraju kiran,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I am from SAP world.. we use SAP's SAPUI5 - jQuery based javascript framework.. also the open source version of OpenUI5 is very nice.. can you plesae add SAP/OpenUI5 to the above list?

  • Smartclient from Isomorphic is missing

    by Sashir Estela,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    What about Smartclient? It is a really good open source RIA javascript framework www.smartclient.com.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT