1

I'm interested in using the JSXGraph JavaScript library in a website project. The library is covered by the LGPL and MIT licenses. I'm new to licensing and am trying to answer the following question:

Suppose I build a subscription-based website that allows users to buy monthly access to the site. Users would be served proprietary content and be able to interact with dynamic widgets built on JSXGraph. What responsibilities do I have to customers or the license holders themselves?

Does the answer change if instead of a website, I build a mobile app that serves the content and dynamic widgets?

migrated from programmers.stackexchange.com Oct 12 '16 at 20:55

This question came from our site for professionals, academics, and students working within the systems development life cycle.

1

While the project website is not that clear, the README on GitHub is much clearer:

JSXGraph is free software dual licensed under the GNU LGPL or MIT License.

Dual licensed means that you can choose which license applies to you. For commercial use, you will be better off choosing to follow the MIT requirements only: it is less complicated to comply with MIT than with LGPL.

The only condition of the MIT license is:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

That means that your app (whether web app or mobile app) should contain an About page (or a Licenses page, or something like that) where you reproduce this notice, preferably with a link to the project page as well (but that is not part of the requirement).

1

JSXGrpah is distributed under a choice of licenses. The use of an "LGPL AND MIT" on their home page is a bit misleading as I could be led to think that both licenses apply:

JSXGraph is released under the LGPL – Lesser GNU General Public License – and the MIT license.

However the actual COPYRIGHT file included in the repository is more explicit:

JSXGraph is free software dual licensed under the GNU LGPL or MIT License.

You can redistribute it and/or modify it under the terms of the

  • GNU Lesser General Public License [...]

OR

  • MIT License [...]

What this means is that I can select one license or the other.

yet, in all cases some portion of the code are always under the MIT license as I can see here. The code "UTF-8 Decoder by Bjoern Hoehrmann" was itself originally under a choice of BSD or MIT license. Since only an MIT license has been reproduced in the JSXGraph COPYRIGHT file, I assume that the JSXGraph authors elected to use the MIT alternative.

As a summary I can select either the LGPL3.0 or later or the MIT license, plus the MIT license for third-party inclusions.

Both licenses allow unrestricted usage. The LGPL has extra requirements including source code redistribution and change tracking when modified. Using one over the other is a matter of taste and legal policy. For a proprietary application, the permissive MIT license has fewer constraints.

Suppose I build a subscription-based website that allows users to buy monthly access to the site. Users would be served proprietary content and be able to interact with dynamic widgets built on JSXGraph. What responsibilities do I have to customers or the license holders themselves?

JSXGraph looks like a frontend JavaScript library to me and therefore its code is redistributed to the user of my web application. In all case I would need to provide some attribution: assuming that I select the permissive MIT license choice, I would ensure that the original license notices and copyrights is included in my web app (ideally in the code of JSXGraph) and/or reproduce somewhere in my application this notice. I would also signify my choice of license by stating that I elected to use the MIT choice: This would be an extra statement that I would add to the notice I reproduce or it could be part of some additional documentation.

Does the answer change if instead of a website, I build a mobile app that serves the content and dynamic widgets?

The MIT license requirements do not change in this case. But the LGPL 3.0 license requirement may change. For instance, since the LGPL 3.0 is an exception to the GPL 3.0, I may have additional requirement related to user products in a locked-down mobile application context (though these are unlikely to be an issue for a JavaScript library like JSXGraph).

If I pick the permissive MIT license, then the requirements are essentially limited to attribution and the same as they would be for a web application frontend as described above.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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