I am currently in the process of selecting a widget framework to be used for a new project. Current choices are Dojo/ExtJS4. We are leaning on ExtJS4 but might have some issues with the licensing.

From the Sencha license page:

Our open source license is the appropriate option if you are creating an open source application under a license compatible with the GNU GPL license v3.

However on the GPL FAQ:


A company is running a modified version of a GPL'ed program on a web site. Does the GPL say they must release their modified sources?

The GPL permits anyone to make a modified version and use it without ever distributing it to others. What this company is doing is a special case of that. Therefore, the company does not have to release the modified sources.

It is essential for people to have the freedom to make modifications and use them privately, without ever publishing those modifications. However, putting the program on a server machine for the public to talk to is hardly “private” use, so it would be legitimate to require release of the source code in that special case. Developers who wish to address this might want to use the GNU Affero GPL for programs designed for network server use.

Seems contradicting on what they have on Sencha's licensing page. Moreover, the webapp will be deployed on the cloud and will offer a subscription model. I've read that this is the so called ASP loophole and that the Affero GPL was made to address this. The project will have multiple modules, but certainly there would be backend/integration and frontend modules. The frontend will just consume exposed REST services and will be an entirely different application.

The question is, would there be any license issues if we use the GPL version and willing to offer the source code (frontend module only) which uses ExtJS for our future clients?

  • Why not ask the vendor?
    – NoChance
    Commented Jan 19, 2014 at 19:58

2 Answers 2


I think the confusion comes from not treating your server side and client side applications separately.

Let's deal with the server side first.

Presumably, you won't need any of Sencha's ExtJS code for the services that you are putting together. So their license restrictions won't have an impact upon your server side code. Even if you did use their code within your server's services, the GPL "loophole" (as you called it) means you don't need to distribute your server side source code.

Regarding the client, your client side code will become GPL'd unless you request an exception version from Sencha. Their licensing page provides the request for exception forms.

It's not clear to me if you need their commercial license or not, and that's a question best asked of Sencha. Assuming you didn't use ExtJS in your server code and you're selling access to the services and not the client, then you may be able to argue that you are not using ExtJS in a commercial manner. The polite (and easiest) thing would be to contact them and ask their opinion on the matter.


If you read Sencha's Licensing FAQ you will see that they the front end and back end part of a single package:

Even if only the front-end uses Ext JS code, you should consider that the combination of front and back ends constitutes the application, and the source code for both back and front end would need to be provided to the application’s end users under GPLv3...

Sencha makes it pretty clear that if you are using ExtJS for anything non-open source you need a commercial license.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.