Comparison of JavaScript frameworks

From Wikipedia, the free encyclopedia
Jump to: navigation, search

There are many JavaScript frameworks available. The intention of this comparison is to show some examples of notable JavaScript frameworks.

General information[edit]

Framework Version compared Size License Source language
Ample SDK 0.9.3
1 Jul 2010
Variable.
Core size:
40 kB (minified & gzipped)
MIT & GPL ?
AngularJS 1.5.0
5 Feb 2016
144 kB (minified & compressed) MIT JavaScript
Backbone.js 1.2.1
June 2015
7.3 kB (Packed and gzipped) MIT JavaScript
DHTMLX 4.0
4 Jun 2014
Variable GPL & Commercial[1] JavaScript
Dojo 1.10.4
18 Jan 2015
Variable.
Base size:
41 kB (minified & gzipped),
155 kB (minified),
598 kB (uncompressed)[2]
BSD & AFL JavaScript + HTML
Echo3 3.0.rc1
24 Mar 2011
? MPL, LGPL or GPL JavaScript and/or Java
Ember.js 1.7.0
19 Aug 2014
95 kB (minified & gzipped),
340 kB (minified),
1.5 MB (uncompressed)
MIT JavaScript
Enyo 2.0.1
30 Aug 2012
<25 kB (core gzipped) Apache 2 [3] JavaScript
Ext JS 4.2
13 Mar 2013
84–502 kB GPL & Commercial [4] JavaScript
Google Web Toolkit 2.7.0
November 2014
Variable Apache Java
jQuery (library) 1.9.1
4 Feb 2013
32 KiB (minified & gzipped),
93 KiB (minified),
252 KiB (uncompressed)
MIT JavaScript
jQWidgets 3.9.1
29 Oct 2015
3102 KB (minified),
7486 KB (uncompressed)
Creative Commons Attribution-NonCommercial 3.0 and Commercial[5] JavaScript, HTML, CSS
Knockout 3.4.0
17 November 2015
58 KB minified / 280 KB (development mode) MIT JavaScript
midori (abandoned) 2010.05
10 May 2010
9 kB (minified & gzipped),
50 kB (uncompressed)
MIT ?
MochiKit (abandoned) 1.4.2 - no longer developed
17 Nov 2008
32–200 kB MIT & AFL ?
MooTools 1.6.0
14 Jan 2016
Variable;
7.3–65 KiB (YUI Compressor),[6]


Variable;
7.3–65 KiB (YUI Compressor),[7]
101 KiB (uncompressed)[8]

MIT JavaScript
React (JavaScript library) 15.4.1
25 Oct 2016
142 kB (minified)[9]
including React (21kB) + ReactDOM(121kB))
BSD JavaScript
SAP OpenUI5 1.26.6
February 2015
20.8MB (1.34.7 runtime, minified, zipped)
6.8MB(1.34.7 runtime mobile, minified, zipped)
52.1MB (1.34.7 SDK, zipped)
Apache 2[10] JavaScript
Prototype & script. aculo.us[11] Prototype: 1.7.3
22 Sep 2015
script.aculo.us: 1.9.0
23 Dec 2010
46–278 kB MIT JavaScript
Pyjamas 8.0
March 2012
Variable Apache 2 & GPL Python
qooxdoo 5.0.1
15 Sep 2015
Variable, starting at 6 kB (gzipped) LGPL & EPL JavaScript
Rialto Toolkit (abandoned) 1.1.5
25 Feb 2011
520 kB Apache ?
Rico (abandoned) 2.0
3 May 2009
? Apache ?
SmartClient & SmartGWT SmartClient: 10.0
September 2014
SmartGWT: 5.0
September 2014
100–500 kb (gzipped). LGPL & Commercial Server: Java
Client: Java (Smart GWT) or Javascript (SmartClient) or XML (both)
SproutCore 1.11.2
2 May 2016
250–700 kb (gzipped). MIT JavaScript
Unified.js 14.0
June 2015
variable about 871 KiB (minified & gzipped) BSD(component only) & Commercial JavaScript
Vue.js 2.1.10
17 Jan 2017
26 kB (minified & gzipped)

71 kB (minified) [12]

219 kB (uncompressed) [13]

MIT JavaScript
Wakanda 9
14 Nov 2014
Variable GPL3 (framework), AGPL (server) & Commercial JavaScript + HTML + CSS
Webix 4.1
November 2016
188 kB (gzipped) GPL & Commercial JavaScript
YUI (abandoned) 3.18.1
21 Oct 2014
Variable; library core is 31 kB BSD JavaScript + HTML + CSS
ZK 8.0.1
19 Jan 2016
Variable LGPL & GPL & ZOL XML + Java (JavaScript optional)

Features[edit]

 v Ample SDK AngularJS DHTMLX Dojo Echo3 Ember.js Enyo Ext JS Google Web Toolkit jQuery jQWidgets midori MochiKit MooTools OpenUI5 Prototype & script. aculo.us[11] Pyjamas qooxdoo Rialto Toolkit Rico SmartClient and SmartGWT SproutCore Unified.js Wakanda YUI ZK Webix
Feature detection[14] No[15] Yes No Yes[16] No Yes Yes[17] No[18][19] Yes[20] Yes No[21] No[22] Yes[23] No[24] Yes No[25] No Partial [26] Yes Yes Partial Yes No[27] Yes
DOM wrapped[28] Yes[29] Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes No[30] No[31][32] Yes Yes Yes No Yes No Yes Yes Yes Yes
XMLHttpRequest
data retrieval
Yes Yes Yes Yes[33] Yes Yes Yes Yes Yes[34] Yes Yes Yes[35] Yes Yes Yes Yes No Yes[36] Yes Yes Yes Yes Yes
WebSocket Yes Yes Yes[33] Yes Yes Yes Yes No Yes Yes Yes[35] Yes[37] Yes Yes Yes No Yes[36] Yes Via Plugin Yes Yes[38]
Server push data retrieval Yes[39] Yes[40] Yes[41] Yes[39] No Yes[42] Via Plugin Yes[43] Yes[44] Yes
Other data retrieval Yes: XML Yes: XML, CSV, HTML Yes: XML, HTML, CSV, ATOM[45] Yes: XML, SOAP, AMF, Ext.Direct Yes: RPC, RequestFactory Yes: XML, HTML Yes: XML, JSON, CSV, TSV[34] Yes: XML, HTML Yes: XML, WSDL, RSS, and Java-based SQL, Hibernate, POJO adapters Yes: XML, CSV,SSV,[46] JSON(with js plugin) Yes: JSON-RPC, Wakanda REST Yes: XML, HTML, CS, JSON, JSArray, CSV
Drag and drop Yes Yes Yes[47] Yes Yes With plugin[48] Yes[49] Yes Yes Yes[50] Yes[51] Yes Depends Yes Yes Yes Yes Yes Yes Yes Yes Yes[52]
Simple visual effects Yes Yes Yes Yes[53] Yes Yes Yes Yes Yes Yes Yes Yes[54] Yes Yes Yes Yes No Yes Yes Yes[55] Yes Yes Yes Yes
Animation /
advanced visual effects
Yes Yes Yes Yes[56] Yes Yes[57] Yes Yes Yes Yes Yes Yes[58] Yes[59] Yes Yes No Yes Yes Yes[55] Yes Yes Yes[60]
Back button support /
history management
Yes No Yes[61] Yes Yes[62] Yes[63] Yes With plugins[64] No Yes With plugin[65] Yes Yes[66] Yes No Yes Yes Yes no Yes Yes
Input form widgets & validation Yes Yes Yes[67] Yes[68] Yes Yes Yes Yes, Validation requires plugin[69] With plugins[70] Yes[71] Yes Yes Yes Yes Yes[66] Yes Yes Yes Yes Yes No Yes Yes Yes [72] [73]
Ample SDK AngularJS DHTMLX Dojo Echo3 Ember.js Enyo ExtJS Google Web Toolkit jQuery jQWidgets midori MochiKit MooTools OpenUI5 Prototype & script. aculo.us[11] Pyjamas qooxdoo Rialto Toolkit Rico SmartClient and SmartGWT SproutCore Unified.js Wakanda YUI ZK Webix
Grid Yes[74] Yes[75] Yes[76] Yes Yes Yes With plugins[77] Yes[78] No With plugin[79] Yes Yes Yes Yes Yes[80] Yes Yes Yes Yes[81] Yes Yes[82]
Hierarchical Tree Yes[74] Yes[83] Yes[84] Yes[85] Yes[86] Yes With plugins[87] Yes[88] No With plugins[89] Yes Yes[90] Yes[91] Yes Yes Yes Yes Yes (Auto Form)[92] Yes Yes [93]
Rich text editor Yes[94] No Yes[95] Yes[96] Yes[97] Yes[98] Yes With plugins[99] Yes[100] No Yes[101] Yes Yes No No Yes Via plugin Yes[102] Yes Yes[103]
Autocompletion tools No Yes[104] Yes[105] Yes Yes Yes[106] Yes[107] Yes With plugin[108] Yes Yes Yes Yes Yes With plugins Yes Yes[109] Yes Yes
HTML generation tools Yes No Yes Yes[110] Yes Yes Yes Yes[100] No Yes[111] Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes
Widgets themeable / skinnable Yes Yes Yes[112] Yes[113] Yes Yes[114] Yes[115] Yes[116] Yes[117] Yes Yes Yes Yes[118] Yes Yes Yes Yes[119] Yes Yes
GUI resizable panels and modal dialogs Yes Yes[120] Yes Yes Yes Yes With plugins Yes[121] Yes[122] Yes Yes Yes Yes Yes[123] Yes[124] Yes
GUI page layout Yes Yes[125] Yes Yes Yes With plugin[126] Yes[127][128] Yes[122] Yes Yes Yes Yes Yes[129] Yes[124] Yes [130]
Canvas support Yes Yes Yes[131] Yes Yes Yes With plugin[132] Yes[133] Yes[134] Yes Yes Yes Yes Yes Yes[135] Yes[136] Yes
Mobile/tablet support (touch events) Yes Yes Yes[137] Yes[138] No Yes Yes Yes With plugin[139] With plugin[140] Yes[141] With plugin[142] Yes Yes Yes Yes Yes Yes[143][144] Yes[145] Yes[146]
Accessibility /
graceful degradation[147]
No Yes No Yes[148] No Yes Yes[149] Yes[150] Yes Yes[151] Yes No[152] Degradation: No
Accessibility: Yes
Degradation: No
Accessibility: Yes
Yes Yes Yes[153]
ARIA compliant No Yes[148] Yes[149] Yes[154] Yes[151] Yes No Yes Yes Yes Yes Yes [155]
Developer tools, Visual design No Yes[156] Yes[157][158] In development[159] in progress[160] Yes[161][162][163] Yes Yes[164][165] Yes[117][166][167] Yes[168][169] No Yes[170] Yes No Yes Yes[171] Yes Yes[172][173][174]
Offline storage[175] Yes No[176] Yes Yes[177] Via Google Gears[178] With plugin[179] Yes[180] No Via Pyjamas-Desktop[181] Yes No Yes Yes planned Yes Yes
Cross-browser 2d Vector Graphics[182] Yes[183] Yes[184] Yes With plugin[185] Yes[133] Yes[186] Yes Yes No] Yes Yes (via Raphael) Yes[187] Yes (via Raphael)[188]
Charting & Dashboard[189] Yes[190] Yes[191] Yes[192] Yes[193] With plugin[194][195] Yes[196][197] Yes No Yes Yes[198] Yes[199] Yes[200]
RTL Support in UI Components Yes Yes Yes Depends on the plugin used Yes[151] Yes Yes Yes Yes No

Browser support[edit]

Framework Internet Explorer Mozilla Firefox Safari Opera Chrome
Ample SDK 6+ 1+ 3+ 9.6+ 1+
AngularJS (1.3) 8+ (9+) 4+ 5+ 11+ 30+
DHTMLX 6+ 1+ 2.0+ 9+ 1+
Dojo 6+ 3+[201] 4[201] 10.50+[201] 3[201]
Echo3 6+ 1.5+ 3+ 9+ 1+
Ember.js 6+ 3+ 4+ 10.6+ 14+
Enyo 8+[202] >4[202] >5[202] >10[202]
Ext JS 6+ 3.6+ 4+ 11+ 10+[203]
Google Web Toolkit 8+ 1+ 5+ 9+ 1+
jQuery 6+[204] 2+[204] 3+[204] 9+[204] 1+[204]
jQWidgets 7+[205] 2+[205] 3+[205] 9+[205] 1+[205]
midori 6+ 1.5+ 2+ 9+
MochiKit 6 1.0.7, 1.5b2 2.0.2 8.5
MooTools 6+ 2+ 3+ 9+ 1+
Prototype & script. aculo.us[11] 6+ 1.5+ 2.0.4+ 9.25+ 1+ (starting with 1.6.1RC3)
Pyjamas 6+ 1+ 2+ 9+
qooxdoo 6+ 2+ 3+ 9+ 2+
Rialto Toolkit 6+ 1.5+ 9+
Rico 5.5+ 1+ 2.0.3[206]
SmartClient and SmartGWT 6+ 1+ 3+ 9+ 1+
SproutCore 6+ 3+ 4+ 9+ 1+
Unified.js 8+ 4+ 5+ 11+ 30+
Wakanda 9+ 4+ 5+ 11+
YUI 6+ 3+[207] 4.0 10.0+
ZK 6+ 2.0+ 3+ 9+ 2+
Webix 8+ 3+ 4+ 9+ 1+

See also[edit]

Notes[edit]

  1. ^ "Licenses". dhtmlx.com. Retrieved 2014-11-23. 
  2. ^ Dojo Base
  3. ^ "About Enyo JS". enyojs.com. Retrieved 2014-11-23. 
  4. ^ "EXt JS 5 Licensing". http://www.sencha.com. Retrieved 2014-11-23.  External link in |website= (help)
  5. ^ "License - Javascript, HTML5, jQuery Widgets". www.jqwidgets.com. Retrieved 2015-12-17. 
  6. ^ [1]
  7. ^ [2]
  8. ^ [3]
  9. ^ "React Minified Library". Cloudflare. CDNJS. Retrieved 19 December 2016. 
  10. ^ https://github.com/SAP/openui5/ OpenUI5 on GitHub
  11. ^ a b c d script.aculo.us is an add-on to Prototype.
  12. ^ "Minified Vue.js Library". CloudFlare. CDNJS. Retrieved 14 February 2017. 
  13. ^ "Vue 2.1.10 uncompressed". Cloudflare CDN. Retrieved 14 February 2017. 
  14. ^ Feature detection is preferred by many to browser sniffing to support future browsers: Browser Detecting (and what to do Instead), Feature Detection: State of the Art Browser Scripting, Browser Feature Detection
  15. ^ Ample SDK uses Browser Sniffing
  16. ^ Documentation dojo/has
  17. ^ http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.supports
  18. ^ GWT implementations for every browser
  19. ^ Google Docs (built on GWT) stops working on a Firefox rebranding because of not doing proper Feature Detection
  20. ^ jQuery 1.3
  21. ^ http://www.midorijs.com/midori.js midori.js
  22. ^ http://www.mochikit.com/MochiKit/Style.js MochiKit/Style.js
  23. ^ http://mootools.net/blog/2010/10/11/mootools-core-1-3-stable-and-mootools-more-1-3rc/
  24. ^ Feature detection all the way
  25. ^ https://svn.improve.fr/rialto/Rialto-coreV1/rialtoEngine/javascript/rialto.js
  26. ^ Author disagrees that feature detection alone is sufficient
  27. ^ http://zssdemo.zkoss.org/zkau/web/js/zk/zk.js.dsp zk.js
  28. ^ kangax (5 April 2010). "What's wrong with extending the DOM". Retrieved 6 April 2010. 
  29. ^ http://www.amplesdk.com/about/technologies/javascript/
  30. ^ MooTools Docs - Element/Element
  31. ^ Prototype JavaScript framework: Element
  32. ^ Prototype 2.0 will not extend the DOM - Ajaxian
  33. ^ a b AJAX and Dojo
  34. ^ a b "jQuery Data Adapter". www.jqwidgets.com. Retrieved 2015-12-17. 
  35. ^ a b MooTools Request
  36. ^ a b Inner HTML demo
  37. ^ Simple chat server example using UI5 WebSocket
  38. ^ [4]
  39. ^ a b http://cometd.org/documentation/cometd-javascript
  40. ^ https://github.com/kembuco/extjs-cometd/
  41. ^ https://code.google.com/p/rocket-gwt/wiki/Comet
  42. ^ Real-time Messaging Module
  43. ^ support only the nexacro browser currently
  44. ^ http://books.zkoss.org/wiki/ZK_Developer%27s_Reference/Server_Push
  45. ^ http://docs.dojocampus.org/dojox/data
  46. ^ SSV : special separate value(rs,ds character delimeter) for fast speed parsing
  47. ^ http://docs.dojocampus.org/dojo/dnd
  48. ^ https://code.google.com/p/gwt-dnd/
  49. ^ "jQuery DragDrop Plugin". www.jqwidgets.com. Retrieved 2015-12-17. 
  50. ^ MooTools Drag.Move
  51. ^ Accordion drag & drop
  52. ^ [5]
  53. ^ http://docs.dojocampus.org/dojo/fx/
  54. ^ MooTools Fx.Tween (Simple Transitions)
  55. ^ a b http://showcase.sproutcore.com/#demos/Transition%20Plugins
  56. ^ http://docs.dojocampus.org/dojox/fx/
  57. ^ http://enyojs.com/api/#enyo.Animator
  58. ^ Mochikit.Visual
  59. ^ MooTools Fx.Morph (Advanced Transitions)
  60. ^ [6]
  61. ^ http://docs.dojocampus.org/dojo/back
  62. ^ http://enyojs.com/docs/2.4.0/api/#enyo.Router
  63. ^ http://www.sencha.com/products/js/roadmap.php Since v2.2
  64. ^ Address, History, jquery History, History/Remote, jQuery BBQ
  65. ^ MooTools-History
  66. ^ a b Pyjamas Kitchen Sink demo
  67. ^ dhtmlxForm
  68. ^ http://docs.dojocampus.org/dijit/form
  69. ^ http://techblog.maydu.eu/?p=7
  70. ^ http://plugins.jquery.com
  71. ^ "jQuery Validator". www.jqwidgets.com. Retrieved 2015-12-17. 
  72. ^ Webix Data Validation
  73. ^ Webix Input form
  74. ^ a b Data Views
  75. ^ dhtmlxGrid
  76. ^ http://docs.dojocampus.org/dojox/grid
  77. ^ jqGrid, Ingrid, Flexigrid, SlickGrid, ParamQuery Grid, ShieldUI jQuery Grid
  78. ^ "jQuery Grid, JavaScript Grid, jqxGrid, DataGrid, jQuery DataGrid". www.jqwidgets.com. Retrieved 2015-12-17. 
  79. ^ JxLib Library or phatfusion sortable table plugin or DrasticGrid
  80. ^ Live grid
  81. ^ Wakanda DataGrid
  82. ^ Webix grid widget
  83. ^ dhtmlxTree
  84. ^ http://docs.dojocampus.org/dijit/Tree
  85. ^ Tree demo
  86. ^ Tree demos
  87. ^ treeview, file_tree_viewer
  88. ^ "jQuery Tree". www.jqwidgets.com. Retrieved 2015-12-17. 
  89. ^ MooTree 2 or JxLib Library or MooTools PowerTools!
  90. ^ http://pyjs.org/examples/kitchensink/output/KitchenSink.html#Trees Tree
  91. ^ http://demo.qooxdoo.org/current/demobrowser/ Demo browser
  92. ^ Wakanda Auto Form
  93. ^ Webix Tree widget
  94. ^ [7]
  95. ^ dhtmlxEditor
  96. ^ http://docs.dojocampus.org/dijit/Editor
  97. ^ Echo 3 new features
  98. ^ problems with the HTMLEditor creating XHTML vs the HTML it does now
  99. ^ markitup, jwysiwyg, htmlbox, WYMeditor
  100. ^ a b "jQuery Editor". www.jqwidgets.com. Retrieved 2015-12-17. 
  101. ^ MooEditable
  102. ^ Wakanda WYSIWYG Editor
  103. ^ Webix Rich Text editor
  104. ^ dhtmlxCombo
  105. ^ http://docs.dojocampus.org/dijit/form/ComboBox
  106. ^ http://jqueryui.com/autocomplete/
  107. ^ "jQuery Input, jQuery Auto Complete". www.jqwidgets.com. Retrieved 2015-12-17. 
  108. ^ Digitarald's Autocompleter Plugin
  109. ^ Wakanda Combo Box
  110. ^ As of Dojo 1.3, the NodeList.addContent() api can be used to create content for example: dojo.query(".note").addContent("h4 NOTE: h4", "before");
  111. ^ MooTools Elements
  112. ^ SkinBuilder
  113. ^ http://docs.dojocampus.org/dijit-themes
  114. ^ Community-driven skins, Theme Builder
  115. ^ Skinning GWT controls with style sheets
  116. ^ ThemeRoller
  117. ^ a b "Theme Builder for jQWidgets". www.jqwidgets.com. Retrieved 2015-12-17. 
  118. ^ http://manual.qooxdoo.org/current/pages/gui_toolkit.html#themes
  119. ^ Wakanda Widget Overview (skins / styles)
  120. ^ dhtmlxWindows
  121. ^ "jQuery Window". www.jqwidgets.com. Retrieved 2015-12-17. 
  122. ^ a b Using MochaUI Library or JxLib
  123. ^ Wakanda Dialogs
  124. ^ a b http://www.zkoss.org/smalltalks/zkstudio_vedemo/
  125. ^ dhtmlxLayout
  126. ^ [8]
  127. ^ "jQuery Docking Layout". www.jqwidgets.com. Retrieved 2015-12-17. 
  128. ^ "jQuery Splitter". www.jqwidgets.com. Retrieved 2015-12-17. 
  129. ^ Wakanda Container / Layout
  130. ^ Webix Layout
  131. ^ dojo.gfx
  132. ^ jQuery Canvas plugin
  133. ^ a b "jQuery Draw Plugin". www.jqwidgets.com. Retrieved 2015-12-17. 
  134. ^ MochaUI Library
  135. ^ Wakanda Canvas
  136. ^ [9]
  137. ^ DHTMLX Touch
  138. ^ dojox.mobile & dojox.mobile.app
  139. ^ [10]
  140. ^ jQTouch, jQuery Mobile Project
  141. ^ "jQWidgets Mobile Demos". www.jqwidgets.com. Retrieved 2015-12-17. 
  142. ^ MooTools Mobile (unofficial)
  143. ^ Wakanda Navigation View
  144. ^ Wakanda Split View
  145. ^ http://www.zkoss.org/whyzk/Features
  146. ^ [11] Webix mobile/tablet support
  147. ^ All JavaScript frameworks can be written in an accessible way with graceful degradation, frameworks seen here which imply out-of-the-box accessibility have made a special effort to document best practices for their particular framework.
  148. ^ a b http://docs.dojocampus.org/quickstart/writingWidgets/a11y
  149. ^ a b [12]
  150. ^ Built-in Accessibility in GWT 1.5 Applications
  151. ^ a b c "jQWidgets Accessibility Overview". www.jqwidgets.com. Retrieved 2015-12-17. 
  152. ^ Qooxdoo's "Extreme JavaScript" paradigm
  153. ^ [13]
  154. ^ jQuery UI has ARIA support
  155. ^ [14]
  156. ^ Visual Designer for DHTMLX
  157. ^ Wavemaker
  158. ^ Aptana Studio
  159. ^ EchoStudio 3
  160. ^ [15]
  161. ^ [16]
  162. ^ Theme Builder
  163. ^ Custom build tool
  164. ^ Netbeans has jQuery support
  165. ^ jQuery API
  166. ^ "ßeta - jQWidgets Charts Studio". www.jqwidgets.com. Retrieved 2015-12-17. 
  167. ^ "JSEditor". www.jqwidgets.com. Retrieved 2015-12-17. 
  168. ^ MooTools-core Documentation
  169. ^ MooTools-more Document
  170. ^ Custom build, JS Linker, API generation, Unit test framework, etc.
  171. ^ Wakanda Studio
  172. ^ https://webix.com/snippet/
  173. ^ https://webix.com/skin-builder/
  174. ^ https://webix.com/form-builder/
  175. ^ JavaScript frameworks currently only have the ability to support offline storage by taking advantage of pre-installed browser extensions such as Google Gears. If a user does not have one of these supported extensions installed in their browser already then offline support will be unavailable to the framework. JavaScript framework developers interested in implementing Gears may want to start with the Gears Getting Started Guide.
  176. ^ o.DojoToolkit.Org/offline says "Dojo Offline is no longer supported after Dojo 1.3"
  177. ^ http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.data.proxy.WebStorage
  178. ^ Google API Libraries for Google Web Toolkit
  179. ^ jQuery HTML5 Storage plugin
  180. ^ "This example shows how to Save/Load the Grid's state.". www.jqwidgets.com. Retrieved 2015-12-17. 
  181. ^ Pyjamas Desktop
  182. ^ Some JavaScript libraries provide 2d graphics primitives that can be used for cross-browser vector graphics. These libraries rely on underlying technologies in the browser or plugins such as Canvas, SVG, VML, Flash, and Silverlight to do the actual rendering, but help isolate application and widget code from the rendering engine API differences
  183. ^ [17]
  184. ^ http://docs.dojocampus.org/dojox/gfx
  185. ^ http://keith-wood.name/svg.html jQuery SVG plugin
  186. ^ MooTools ART
  187. ^ http://books.zkoss.org/wiki/Small_Talks/2010/June/How_To_Use_Canvas4Z
  188. ^ https://docs.webix.com/desktop__chart_integration.html#raphaeumllcharts
  189. ^ Some JavaScript libraries include widgets for Charts, Gauges, and other data visualizations.
  190. ^ [18]
  191. ^ dhtmlxChart
  192. ^ http://docs.dojocampus.org/dojox/charting
  193. ^ http://dev.sencha.com/deploy/dev/docs/?class=Ext.chart.Chart Chart API
  194. ^ jQuery Flot Plugin
  195. ^ jQuery Visualize Plugin
  196. ^ "jqxChart - javascript chart widget powered by jQuery, HTML5, SVG". www.jqwidgets.com. Retrieved 2015-12-17. 
  197. ^ "jQuery Gauge". www.jqwidgets.com. Retrieved 2015-12-17. 
  198. ^ WakandaChart
  199. ^ [19]
  200. ^ Webix Charts
  201. ^ a b c d http://docs.dojocampus.org/releasenotes/1.4
  202. ^ a b c d http://enyojs.com/docs/platforms
  203. ^ http://www.sencha.com/products/js/
  204. ^ a b c d e http://docs.jquery.com/Browser_Compatibility
  205. ^ a b c d e "jQuery UI Widgets - Help Documentation". www.jqwidgets.com. Retrieved 2015-12-17. 
  206. ^ http://openrico.org/resources
  207. ^ http://developer.yahoo.com/yui/articles/gbs/