Can use extJS for an business application for free of cost?
Ext JS comes with a dual license:
http://extjs.com/products/license.php
So yes, if you open source your application with a license compatible with the GNU GPL license v3.
I would read the license aggrement.
You may not, without prior written consent of Ext JS, LLC, redistribute the Software or Modifications other than by including the Software or a portion thereof within Your own product, which must have substantially different functionality than the Software or Modifications and must not allow any third party to use the Software or Modifications, or any portions thereof, for software development purposes. You are explicitly not allowed to redistribute the Software or Modifications as part of any product that can be described as a development toolkit or library or is intended for use by software developers and not end-users. You are not allowed to redistribute any part of the Software documentation.
ExtJs has always had the dual license. However, the open source portion of the dual licence has become increasing restrictive as the product has progressed.
Version 2.0.2 was the last LGPL release. All subsequent releases (2.1 onwards) were released under GPL.
If you want to go with 2.0.2, it's pretty stable, but without some of the bells & whistles of later releases. You can get it here : http://yogurtearl.com/ext-2.0.2.zip
Can you use extJS for an business application for free?
Well, you can if any of the follwing these statements are true.
- You open-source your app under GPL v3.
- The app is only for internal use in your company.
- The app is used by your company to provide a service and not directly distributed to the customer e.g. most web pages (according to GPL this is interpreted as an internal use of the app - if Ext team would have chosen to prohibit that, then they would have used Affero GPL, which directly forbids that).
It's under the GPL and also available with a Commercial License. However, with the nature of Javascript, and the fact that it is always fetched by the browser before being executed may have made people think that by using ExtJS, they would be in effect redistributing the package and end up being required to distribute their own source under the GPL.
They have a license that specifically applies to Applications that make use of the library, and are not creating libraries based upon ExtJS:
http://www.extjs.com/products/floss-exception.php
"Open Source License Exception
This Exception is intended to be used for end-user applications and is not intended to be applied to software development libraries or toolkits ...
(d)the Derivative Work can reasonably be considered independent and separate work that is intended for use by end-users and not as a library for software development purposes."
So from my understanding of this, you can use ExtJS in a publicly available web application, and should also be able to create your own Javascript widgets based upon ExtJS as long as they are not being distributed on their own as a separate library.