Ext JS
Developer(s) | Sencha |
---|---|
Stable release | 3.2
/ April 7, 2010 |
Type | JavaScript library |
License | GPLv3, commercial |
Website | http://www.sencha.com/products/js/ |
Ext (no official pronunciation[1]) is a JavaScript library for building interactive web applications[2] using techniques such as Ajax, DHTML and DOM scripting.
Originally built as an add-on library extension of YUI, Ext includes interoperability with jQuery and Prototype. As of version 1.1, Ext retains no dependencies on external libraries, instead making their use optional.[3]
Features
GUI controls
Ext includes a set of GUI-based form controls (or "widgets") for use within web applications:
- text field and textarea input controls
- date fields with a pop-up date-picker
- numeric fields
- list box and comboboxes
- radio and checkbox controls
- html editor control
- grid control (with both read-only and edit modes, sortable data, lockable and draggable columns, and a variety of other features)
- tree control
- tab panels
- toolbars
- desktop application-style menus
- region panels to allow a form to be divided into multiple sub-sections
- sliders
- flash charts
Many of these controls are able to communicate with a web server using Ajax.
Application support
Ext includes web application support with features such as:
- modal dialog boxes
- interactive user-input validation prompts
- state management
Other features include a DOM selector class allowing operations to be performed on elements within the page, data stores that can be used to manage data, and classes to create and manage data in JSON and XML formats.
Ext 2.0
Ext version 2.0 was released on 4 December 2007. This version was promoted as providing an interface and features more similar to those traditionally associated with desktop applications. Also promoted were the new user documentation, API documentation, and samples.[4]
Ext 2.0 doesn't provide backward compatibility with version 1.1. A migration guide was developed to address this.[5]
Ext 3.0
Ext version 3.0 was released on 6 July 2009. This version adds communication support for REST and a new Ext.Direct server side platform. New flash charting and ListView elements were added to the standard display components. It is backwards compatible with version 2.0 code.
Sencha
On 15 June 2010, the merger of Ext JS with JQTouch and Raphaël was announced[6] forming a new platform called Sencha. Ext JS still remains available separately on the new Sencha website.[7]
License history
The open source license associated with Ext was changed in 2008, subject to critique from commentators[who?]. In version 2.0.2, the authors claimed Ext was available under an LGPL-style license as long as you "plan to use Ext in a personal, educational or non-profit manner" or "in an open source project that precludes using non-open source software" or "are using Ext in a commercial application that is not a software development library or toolkit". This was no longer the case with ExtJS 2.1.[8] Some people[who?] claimed that the license conditions as the authors described it stood while others claimed that clause 7[9] of the LGPL-style license enabled the software to be used by all regardless of Ext's conditions. The Ext authors claim that section 7 of the LGPL as it is worded does not apply to "conditions" which their license requires before distribution under the LGPL is permitted as opposed to "additional restrictions" which section 7 allows a distributor to remove.[citation needed]
On 20 April 2008, Ext 2.1 was released under a new dual license which allowed the options of the full GPL 3.0 license or a commercial license.[10]
References
- ^ Pronunciation thread on Ext forum
- ^ (see also, Rich Internet application
- ^ Ext as of version 2.0 can works with different base libraries or adapters. (e.g. YUI, jQuery, Prototype), or it can work standalone.
- ^ API documentation includes a migration guide. http://extjs.com/deploy/dev/docs/
- ^ http://extjs.com/learn/Ext_1_to_2_Migration_Guide
- ^ http://www.sencha.com/blog/2010/06/14/ext-js-jqtouch-raphael-sencha/
- ^ Ext JS overview on Sencha.com http://www.sencha.com/products/js/
- ^ ExtJS forum thread on the license change
- ^ http://www.gnu.org/licenses/lgpl-3.0.txt
- ^ http://extjs.com/blog/2008/04/21/ext-js-21-and-ext-gwt-10-released-preview-of-ext-js-30/
Bibliography
- Orchard, Leslie M.; Pehlivanian, Ara; Koon, Scott; Jones, Harley (August 31, 2009). Professional JavaScript Frameworks: Prototype,YUI, ExtJS, Dojo and MooTools (1st ed.). Wrox Press. p. 888. ISBN 978-0470384596.
- Frederick, Shea; Ramsay, Colin; 'Cutter' Blades, Steve (November 28, 2008). Learning Ext JS (1st ed.). Packt Publishing. p. 299. ISBN 978-1847195142.
- Garcia, Jesus (Summer 2010). Ext JS in Action (1st ed.). Manning Publications. pp. 495 (est). ISBN 978-1935182115.