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.
BT