In 2009, Richard Stallman published “The JavaScript Trap.” It observed that JavaScript served from the Web is now often significant software—and if it's nonfree, it causes all the same problems for users as any other proprietary software. Anybody who's serious about protecting their freedom should reject nonfree JavaScript, just like you'd reject traditional proprietary desktop software.

Unfortunately, this has been easier said than done so far. Browsers will typically download and run JavaScript without the user's knowledge. People who want to avoid running nonfree JavaScript have had little recourse to date besides disabling JavaScript entirely—but that's throwing the baby out with the bathwater.

Enter JavaScript License Web Labels. This is a format that we propose webmasters use to publish license information and source code for the JavaScript they deploy on their sites. It looks simple enough to be accessible to any visitor, but provides enough detail that automated tools can confirm that all of a site's JavaScript is actually free. Such software will make it practical for people to run free JavaScript and refuse nonfree code. Tools like this are already being developed: LibreJS is a plug-in for Mozilla-based browsers that will support JavaScript License Web Labels.

Webmasters should find a lot to like in JavaScript License Web Labels, too. We believe that webmasters that correctly publish JavaScript License Web Labels will comply with conditions in the GNU GPL and AGPL to accompany object code with a copy of the license terms and a way for recipients to get source code. The format is flexible enough that any interested webmaster should be able to use it: it doesn't require them to serve the JavaScript files any specific way, or coordinate with upstream JavaScript developers.

We hope these labels will empower users to be as selective about what licenses they'll accept for JavaScript as they are for traditional desktop software. That said, this is an early effort to tackle the problem, and we're happy to consider changes that can make it more attractive to webmasters or their visitors. For details about the decision-making process behind JavaScript License Web Labels, and how you can send feedback to us, please read our accompanying rationale document. We look forward to hearing from you.