Comparison of JavaScript frameworks
Encyclopedia

Rationale

There are many JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....

 frameworks available. The intention of this comparison is to show some examples of JavaScript frameworks with their different features.

Table of Javascript Frameworks

Ample SDK
Ample SDK
Ample SDK is a lightweight JavaScript library intended to simplify cross-browser web application development. Although the Ample SDK allows you to do client-side scripting in a very similar way as jQuery and many other JavaScript libraries, its main purpose is to enable development of declarative...

DHTMLX
Dhtmlx
DHTMLX is a JavaScript GUI widget library for building dynamic web applications with desktop-like user experience and Ajax data loading. The library is released under both open-source GNU General Public License and commercial licenses...

Dojo
Dojo Toolkit
Dojo Toolkit is an open source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD...

Echo3 Ext JS
Ext (javascript library)
Ext JS is a JavaScript library for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting.Originally built as an add-on library extension of YUI by Jack Slocum, Ext includes interoperability with jQuery and Prototype...

Google Web Toolkit
Google Web Toolkit
Google Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...

jQuery
JQuery
jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig...

midori
Midori Javascript Framework
midori is a lightweight JavaScript library that aims to make JavaScript web development easier. It was created by Aycan Gulez.- Features :* DOM element selection using CSS selectors* Tabs* Drag and Drop* Effects* Pop-up menus...

MochiKit
MochiKit
MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito.Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour...

MooTools
MooTools
MooTools is a lightweight, object-oriented, web-application framework for JavaScript, written in JavaScript. It is released under the free, open-source MIT License...

Prototype
Prototype Javascript Framework
The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of the foundation for Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js...

 & script. aculo.us
Script.aculo.us
script.aculo.us is a JavaScript library built on the Prototype JavaScript Framework, providing dynamic visual effects and user interface elements via the Document Object Model ....

Pyjamas
Pyjamas (software)
Pyjamas is a tool and framework for developing Ajax applications in Python. It contains a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit, and through use of these components, developers can write comprehensive applications, to run in all major web browsers, without...

qooxdoo
Qooxdoo
qooxdoo is an open source Ajax web application framework. It is an LGPL- and/or EPL-licensed multipurpose framework that includes support for professional JavaScript development, a graphical user interface toolkit and high-level client-server communication.- Framework :qooxdoo is entirely...

Rialto Toolkit
Rialto Toolkit
Rialto is a cross browser ajax based JavaScript widgets library. Because it is technology agnostic it can be encapsulated in JSP, JSF, Python, .Net or PHP graphic components....

Rico
Rico (Ajax)
Rico is an open source JavaScript library for developing rich Internet applications that use Ajax.Rico uses the Prototype Javascript Framework library and the JSON standard.- Features :...

SmartClient
SmartClient
SmartClient is an Ajax framework created by Isomorphic Software. First released in 2001, SmartClient has been integrated into products from major software vendors including Informatica and Wily/CA, and has been deployed in thousands of enterprises...

 & SmartGWT
SweetDEV RIA YUI ZK
Version compared 0.9.3
3.0
1.6.0
3.0.rc1
4
2.4
1.6
2010.05
1.4.2
1.4.1
1.6.1/1.8.3
0.5
1.5
1.1.5
2.0
SmartClient: 8.1

SmartGWT: 2.5
3.1
3.4
5.0.9
Size Variable.
Core size:
(minified & gzipped)
Variable Variable.
Base size:
(minified & gzipped),
(minified),
(uncompressed)
Variable (minified & gzipped),
(minified),
(uncompressed)
(minified & gzipped),
(uncompressed)
Variable;
,
(uncompressed)
Variable Variable, starting at (gzipped) (gzipped). Variable; library core is Variable
License MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

 & GPL
GPL & Commercial BSD & AFL
Academic Free License
The Academic Free License is a permissive free software license written in 2002 by Lawrence E. Rosen, the general counsel of the Open Source Initiative ....

MPL
Mozilla Public License
The Mozilla Public License is a free and open source software license. Version 1.0 was developed by Mitchell Baker when she worked as a lawyer at Netscape Communications Corporation and version 1.1 at the Mozilla Foundation...

, LGPL or GPL
GPL and Commercial Apache
Apache License
The Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....

MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

 & GPL
MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

 & AFL
Academic Free License
The Academic Free License is a permissive free software license written in 2002 by Lawrence E. Rosen, the general counsel of the Open Source Initiative ....

MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

MIT
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

Apache 2 & GPL LGPL & EPL
Eclipse Public License
The Eclipse Public License is an open source software license used by the Eclipse Foundation for its software. It replaces the Common Public License and removes certain terms relating to litigations related to patents....

Apache
Apache License
The Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....

Apache
Apache License
The Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....

LGPL & Commercial Apache 2 BSD LGPL & GPL & ZOL
Source language ? JavaScript JavaScript + HTML JavaScript and/or Java JavaScript Java JavaScript ? ? JavaScript JavaScript Python JavaScript ? ? Server: Java
Client: Java (Smart GWT) or Javascript (SmartClient) or XML (both)
? Javascript + HTML + CSS XML + Java (Javascript Optional)
Demo XUL SVG Samples Explorer
Demo Apps
Feature Explorer Client-Side JavaScript Demo Samples & Demos GWT Examples UI demo midori Documen­tation Effects Demos Demos Effects Demos and Example Game pyjs.org examples qooxdoo demo Demos Demos SmartClient Showcase
SmartGWT Showcase
SmartGWT EE Showcase
Getting Started 300 examples, including adv. app example ZKDemo
Features
Ample SDK
Ample SDK
Ample SDK is a lightweight JavaScript library intended to simplify cross-browser web application development. Although the Ample SDK allows you to do client-side scripting in a very similar way as jQuery and many other JavaScript libraries, its main purpose is to enable development of declarative...

DHTMLX
Dhtmlx
DHTMLX is a JavaScript GUI widget library for building dynamic web applications with desktop-like user experience and Ajax data loading. The library is released under both open-source GNU General Public License and commercial licenses...

Dojo
Dojo Toolkit
Dojo Toolkit is an open source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD...

Echo3 Ext JS
Ext (javascript library)
Ext JS is a JavaScript library for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting.Originally built as an add-on library extension of YUI by Jack Slocum, Ext includes interoperability with jQuery and Prototype...

Google Web Toolkit
Google Web Toolkit
Google Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...

jQuery
JQuery
jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig...

midori
Midori Javascript Framework
midori is a lightweight JavaScript library that aims to make JavaScript web development easier. It was created by Aycan Gulez.- Features :* DOM element selection using CSS selectors* Tabs* Drag and Drop* Effects* Pop-up menus...

MochiKit
MochiKit
MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito.Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour...

MooTools
MooTools
MooTools is a lightweight, object-oriented, web-application framework for JavaScript, written in JavaScript. It is released under the free, open-source MIT License...

Prototype
Prototype Javascript Framework
The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of the foundation for Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js...

 & script. aculo.us
Script.aculo.us
script.aculo.us is a JavaScript library built on the Prototype JavaScript Framework, providing dynamic visual effects and user interface elements via the Document Object Model ....

Pyjamas
Pyjamas (software)
Pyjamas is a tool and framework for developing Ajax applications in Python. It contains a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit, and through use of these components, developers can write comprehensive applications, to run in all major web browsers, without...

qooxdoo
Qooxdoo
qooxdoo is an open source Ajax web application framework. It is an LGPL- and/or EPL-licensed multipurpose framework that includes support for professional JavaScript development, a graphical user interface toolkit and high-level client-server communication.- Framework :qooxdoo is entirely...

Rialto Toolkit
Rialto Toolkit
Rialto is a cross browser ajax based JavaScript widgets library. Because it is technology agnostic it can be encapsulated in JSP, JSF, Python, .Net or PHP graphic components....

Rico
Rico (Ajax)
Rico is an open source JavaScript library for developing rich Internet applications that use Ajax.Rico uses the Prototype Javascript Framework library and the JSON standard.- Features :...

SmartClient
SmartClient
SmartClient is an Ajax framework created by Isomorphic Software. First released in 2001, SmartClient has been integrated into products from major software vendors including Informatica and Wily/CA, and has been deployed in thousands of enterprises...

 and SmartGWT
SweetDEV RIA YUI ZK
Feature detection
DOM wrapped
XMLHttpRequest
Ajax (programming)
Ajax is a group of interrelated web development methods used on the client-side to create asynchronous web applications...


data retrieval
JSON
JSON
JSON , or JavaScript Object Notation, is a lightweight text-based open standard designed for human-readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects...

 data retrieval
Server push data retrieval
Other data retrieval
Drag and drop
Simple visual effects
Animation /
advanced visual effects
Event handling
Back button support /
history management
Input form widgets
Web widget
In computing a web widget is a software widget for the web. It's a small application that can be installed and executed within a web page by an end user. They are derived from the idea of code reuse. Other terms used to describe web widgets include: portlet, gadget, badge, module, webjit, capsule,...

 & validation
, Validation requires plugin
Ample SDK
Ample SDK
Ample SDK is a lightweight JavaScript library intended to simplify cross-browser web application development. Although the Ample SDK allows you to do client-side scripting in a very similar way as jQuery and many other JavaScript libraries, its main purpose is to enable development of declarative...

DHTMLX
Dhtmlx
DHTMLX is a JavaScript GUI widget library for building dynamic web applications with desktop-like user experience and Ajax data loading. The library is released under both open-source GNU General Public License and commercial licenses...

Dojo
Dojo Toolkit
Dojo Toolkit is an open source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD...

Echo3 ExtJS
Ext (javascript library)
Ext JS is a JavaScript library for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting.Originally built as an add-on library extension of YUI by Jack Slocum, Ext includes interoperability with jQuery and Prototype...

Google Web Toolkit
Google Web Toolkit
Google Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...

jQuery
JQuery
jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig...

midori
Midori Javascript Framework
midori is a lightweight JavaScript library that aims to make JavaScript web development easier. It was created by Aycan Gulez.- Features :* DOM element selection using CSS selectors* Tabs* Drag and Drop* Effects* Pop-up menus...

MochiKit
MochiKit
MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito.Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour...

MooTools
MooTools
MooTools is a lightweight, object-oriented, web-application framework for JavaScript, written in JavaScript. It is released under the free, open-source MIT License...

Prototype
Prototype Javascript Framework
The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of the foundation for Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js...

 & script. aculo.us
Script.aculo.us
script.aculo.us is a JavaScript library built on the Prototype JavaScript Framework, providing dynamic visual effects and user interface elements via the Document Object Model ....

Pyjamas
Pyjamas (software)
Pyjamas is a tool and framework for developing Ajax applications in Python. It contains a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit, and through use of these components, developers can write comprehensive applications, to run in all major web browsers, without...

qooxdoo
Qooxdoo
qooxdoo is an open source Ajax web application framework. It is an LGPL- and/or EPL-licensed multipurpose framework that includes support for professional JavaScript development, a graphical user interface toolkit and high-level client-server communication.- Framework :qooxdoo is entirely...

Rialto Toolkit
Rialto Toolkit
Rialto is a cross browser ajax based JavaScript widgets library. Because it is technology agnostic it can be encapsulated in JSP, JSF, Python, .Net or PHP graphic components....

Rico
Rico (Ajax)
Rico is an open source JavaScript library for developing rich Internet applications that use Ajax.Rico uses the Prototype Javascript Framework library and the JSON standard.- Features :...

SmartClient
SmartClient
SmartClient is an Ajax framework created by Isomorphic Software. First released in 2001, SmartClient has been integrated into products from major software vendors including Informatica and Wily/CA, and has been deployed in thousands of enterprises...

 and SmartGWT
SweetDEV RIA YUI ZK
Grid
Hierarchical Tree
Tree structure
A tree structure is a way of representing the hierarchical nature of a structure in a graphical form. It is named a "tree structure" because the classic representation resembles a tree, even though the chart is generally upside down compared to an actual tree, with the "root" at the top and the...

Rich text editor
Online rich-text editor
An online rich-text editor is an interface for editing rich text within web browsers, which presents the user with a "what-you-see-is-what-you-get" editing area...

Autocompletion
Autocomplete
Autocomplete is a feature provided by many web browsers, e-mail programs, search engine interfaces, source code editors, database query tools, word processors, and command line interpreters. Autocomplete involves the program predicting a word or phrase that the user wants to type in without the...

 tools
HTML
HTML
HyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....

 generation tools
Widgets themeable / skinnable
GUI resizable panels and modal dialogs
GUI page layout
Canvas support
Mobile/tablet support (touch events)
Accessibility /
graceful degradation
ARIA
WAI-ARIA
is a draft technical specification published by the World Wide Web Consortium that specifies how to increase the accessibility of dynamic content and user interface components developed with Ajax, HTML, JavaScript and related technologies...

 compliant
Developer tools, Visual design
Offline storage
Cross-browser 2d Vector Graphics
Charting & Dashboard
Ample SDK
Ample SDK
Ample SDK is a lightweight JavaScript library intended to simplify cross-browser web application development. Although the Ample SDK allows you to do client-side scripting in a very similar way as jQuery and many other JavaScript libraries, its main purpose is to enable development of declarative...

DHTMLX
Dhtmlx
DHTMLX is a JavaScript GUI widget library for building dynamic web applications with desktop-like user experience and Ajax data loading. The library is released under both open-source GNU General Public License and commercial licenses...

Dojo
Dojo Toolkit
Dojo Toolkit is an open source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD...

Echo3 ExtJS
Ext (javascript library)
Ext JS is a JavaScript library for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting.Originally built as an add-on library extension of YUI by Jack Slocum, Ext includes interoperability with jQuery and Prototype...

Google Web Toolkit
Google Web Toolkit
Google Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...

jQuery
JQuery
jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig...

midori
Midori Javascript Framework
midori is a lightweight JavaScript library that aims to make JavaScript web development easier. It was created by Aycan Gulez.- Features :* DOM element selection using CSS selectors* Tabs* Drag and Drop* Effects* Pop-up menus...

MochiKit
MochiKit
MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito.Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour...

MooTools
MooTools
MooTools is a lightweight, object-oriented, web-application framework for JavaScript, written in JavaScript. It is released under the free, open-source MIT License...

Prototype
Prototype Javascript Framework
The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson in February 2005 as part of the foundation for Ajax support in Ruby on Rails. It is implemented as a single file of JavaScript code, usually named prototype.js...

 & script. aculo.us
Script.aculo.us
script.aculo.us is a JavaScript library built on the Prototype JavaScript Framework, providing dynamic visual effects and user interface elements via the Document Object Model ....

Pyjamas
Pyjamas (software)
Pyjamas is a tool and framework for developing Ajax applications in Python. It contains a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit, and through use of these components, developers can write comprehensive applications, to run in all major web browsers, without...

qooxdoo
Qooxdoo
qooxdoo is an open source Ajax web application framework. It is an LGPL- and/or EPL-licensed multipurpose framework that includes support for professional JavaScript development, a graphical user interface toolkit and high-level client-server communication.- Framework :qooxdoo is entirely...

Rialto Toolkit
Rialto Toolkit
Rialto is a cross browser ajax based JavaScript widgets library. Because it is technology agnostic it can be encapsulated in JSP, JSF, Python, .Net or PHP graphic components....

Rico
Rico (Ajax)
Rico is an open source JavaScript library for developing rich Internet applications that use Ajax.Rico uses the Prototype Javascript Framework library and the JSON standard.- Features :...

SmartClient
SmartClient
SmartClient is an Ajax framework created by Isomorphic Software. First released in 2001, SmartClient has been integrated into products from major software vendors including Informatica and Wily/CA, and has been deployed in thousands of enterprises...

 and SmartGWT
SweetDEV RIA YUI ZK
Browser Support
Internet Explorer
Internet Explorer
Windows Internet Explorer is a series of graphical web browsers developed by Microsoft and included as part of the Microsoft Windows line of operating systems, starting in 1995. It was first released as part of the add-on package Plus! for Windows 95 that year...

6+ 6+ 6+ 6+ 6+ 6+ 6+ 6+ 6 6+ 6+ 6+ 6+ 6+ 5.5+ 6+ 6+ 6+ 6+
Mozilla Firefox
Mozilla Firefox
Mozilla Firefox is a free and open source web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. , Firefox is the second most widely used browser, with approximately 25% of worldwide usage share of web browsers...

1+ 1+ 3+ 1.5+ 1.5+ 1+ 2+ 1.5+ 1.0.7, 1.5b2 2+ 1.5+ 1+ 2+ 1.5+ 1+ 1+ 3+ 2.0+
Safari
Safari (web browser)
Safari is a web browser developed by Apple Inc. and included with the Mac OS X and iOS operating systems. First released as a public beta on January 7, 2003 on the company's Mac OS X operating system, it became Apple's default browser beginning with Mac OS X v10.3 "Panther". Safari is also the...

3+ 2.0+ 4 3+ 3+ 3+ 3+ 2+ 2.0.2 3+ 2.0.4+ 2+ 3+ 2.0.3 3+ 3+ 4.0 3+
Opera
Opera (web browser)
Opera is a web browser and Internet suite developed by Opera Software with over 200 million users worldwide. The browser handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, chatting on IRC, downloading files via BitTorrent,...

9.6+ 9+ 10 9+ 9+ 9+ 9+ 9+ 8.5 9+ 9.25+ 9+ 9+ 9+ 9+ 9.21+, possibly earlier as well 10.0+ 9+
Chrome
Chromium (software)
Chromium is an OpenGL implementation. Unlike other OpenGLimplementations, Chromium does not render the OpenGL command stream toa raster image in order to display on-screen...

1+ 1+ 3 1+ 3+ 1+ 1+ 1+ 1+ (starting with 1.6.1RC3) 2+ 1+ 2+

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK