{{Short description|Browser add-on to block nonfree nontrivial JavaScript}} {{Infobox software | name = GNU LibreJS | logo = LibreJS icon.svg | screenshot = LibreJS on Wikipedia.png | caption = GNU LibreJS 6.0.9 showing the blocked elements on the English Wikipedia main page. | author = | developer = Ruben Rodriguez, Yuchen Pei | released = | latest release version = {{wikidata|property|preferred|references|edit|Q17940363|P348|P548=Q2804309}} | latest release date = {{wikidata|qualifier|preferred|single|Q17940363|P348|P548=Q2804309|P577}} | latest preview version = {{wikidata|property|preferred|references|edit|Q17940363|P348|P548=Q51930650}} | latest preview date = {{wikidata|qualifier|preferred|single|Q17940363|P348|P548=Q51930650|P577}} | license = GPL-3.0-or-later<ref name="ljs">{{cite web |url=https://www.gnu.org/software/librejs/ |title=GNU LibreJS |publisher=GNU.org |accessdate=2026-05-31 |url-status=live }}</ref> | genre = Browser extension | alexa = | website = {{URL|https://www.gnu.org/software/librejs/|gnu.org/software/librejs/}} | AsOf = }}
'''GNU LibreJS''', or simply '''LibreJS''', is a free software web browser extension for Mozilla Firefox-based browsers, written by the GNU Project.<ref name="ljs" /> Its purpose is to block nonfree nontrivial JavaScript programs and allow free or trivial JS in a user's web browser. The add-on was written to address the so-called "JavaScript Trap"<ref name="JSTrap">{{Cite web|url=https://www.gnu.org/philosophy/javascript-trap.html|title=The JavaScript Trap|author=Richard Stallman|publisher=GNU.org|accessdate=2015-07-23|archive-date=2015-10-02|archive-url=https://web.archive.org/web/20151002084342/http://www.gnu.org/philosophy/javascript-trap.html|url-status=live}}</ref> first described by Richard Stallman in 2009,<ref>{{Cite web|url=https://www.gnu.org/philosophy/javascript-trap.html|archive-url=https://web.archive.org/web/20090324011309/https://www.gnu.org/philosophy/javascript-trap.html|url-status=dead|archive-date=2009-03-24|title=The JavaScript Trap|date=2009-03-24|access-date=2018-12-31}}</ref> a situation in which many users unknowingly run proprietary software in their web browsers.
== Description == GNU LibreJS refuses to run nonfree programs that are present in many websites. It is developed as part of the GNU Project by Ruben Rodriguez and Yuchen Pei<ref name="ljs" /> and is included by default in the GNU IceCat browser.<ref name="IceCat">{{Cite web|url=https://www.gnu.org/software/gnuzilla/|title=GNUzilla and IceCat|publisher=Free Software Foundation|access-date=2015-07-23|archive-date=2016-03-27|archive-url=https://web.archive.org/web/20160327035552/http://www.gnu.org/software/gnuzilla/|url-status=live}}</ref><ref>{{Cite web|url=https://pctipp.ch/tipps-tricks/kummerkasten/sicherheit/artikel/die-sicheren-browser-alternativen-90199/|title=Die sicheren Browser-Alternativen|website=PCtipp.ch|language=en|access-date=2019-12-23|archive-date=2018-10-22|archive-url=https://web.archive.org/web/20181022193732/http://www.pctipp.ch/tipps-tricks/kummerkasten/sicherheit/artikel/die-sicheren-browser-alternativen-90199/|url-status=live}}</ref> It can also work with Tor.<ref>{{Cite web|url=https://lwn.net/Articles/624395/|title=GNU LibreJS 6.0.6 released|publisher=LWN.net|author=n8willis|date=2014-12-03|access-date=2015-07-23|archive-date=2016-01-23|archive-url=https://web.archive.org/web/20160123225146/https://lwn.net/Articles/624395/|url-status=live}}</ref><ref>{{Cite web |title=Installer LineageOS sur son appareil Android – LinuxFr.org |url=https://linuxfr.org/news/installer-lineageos-sur-son-appareil-android |access-date=2019-12-23 |website=linuxfr.org |language=fr |archive-date=2024-05-22 |archive-url=https://web.archive.org/web/20240522172225/https://linuxfr.org/news/installer-lineageos-sur-son-appareil-android |url-status=live }}</ref>
The add-on allows site whitelisting and has an email address detection system for users to contact page webmasters in order to persuade them into making their JavaScript code compliant with LibreJS.<ref name="releases">{{Cite web|url=https://savannah.gnu.org/news/?group_id=10972|title=LibreJS – News|publisher=Savannah|access-date=2015-07-23|archive-date=2024-02-28|archive-url=https://web.archive.org/web/20240228135548/https://savannah.gnu.org/news/?group_id=10972|url-status=live}}</ref> According to the Free Software Foundation, many websites (if not whitelisted) break while using the add-on, due to the pervasiveness of proprietary JavaScript code on the web.<ref name="fsf">{{Cite web|url=https://www.fsf.org/blogs/community/librejs-reaches-version-5.4|title=LibreJS reaches version 5.4|author=wtheaker|publisher=Free Software Foundation|date=2013-10-23|access-date=2015-07-23|archive-date=2016-03-04|archive-url=https://web.archive.org/web/20160304214501/https://www.fsf.org/blogs/community/librejs-reaches-version-5.4|url-status=live}}</ref> Nevertheless, programmer and activist Richard Stallman supports the usage of GNU LibreJS.<ref name="JSTrap" />
Criticizing Google, Stallman said, "In general, most Google services require the execution of non-free JavaScript code. If you refuse to do so (for example, by running LibreJS), you will see that you will not be able to use these services."<ref>{{Cite news|url=https://www.developpez.com/actu/111877/Trolldi-pourquoi-Richard-Stallman-pense-que-vous-ne-devriez-pas-utiliser-Google/|title=Trolldi : pourquoi Richard Stallman pense que vous ne devriez pas utiliser Google|website=Developpez.com|language=fr|access-date=2019-12-23|archive-date=2024-05-22|archive-url=https://web.archive.org/web/20240522172221/https://www.developpez.com/actu/111877/Trolldi-pourquoi-Richard-Stallman-pense-que-vous-ne-devriez-pas-utiliser-Google/|url-status=live}}</ref>
==Reception== Klint Finley of ''Wired'', after going without JavaScript for a week, wrote, "The Free Software Foundation launched its Free JavaScript campaign in 2013 to promote websites using only free and open source JavaScript code, or making sites function without it. To help users avoid running proprietary JavaScript, they developed LibreJS, a plugin for the Firefox web browser that blocks most, but not all, JavaScript from running. They also work with engineers to help reduce dependence on proprietary JavaScript."<ref>{{Cite magazine|url=https://www.wired.com/2015/11/i-turned-off-javascript-for-a-whole-week-and-it-was-glorious/|title=I Turned Off JavaScript in My Web Browser for a Whole Week and It Was Glorious|last=Finley|first=Klint|date=2015-11-18|magazine=Wired|access-date=2019-12-23|issn=1059-1028|archive-date=2024-03-23|archive-url=https://web.archive.org/web/20240323105419/https://www.wired.com/2015/11/i-turned-off-javascript-for-a-whole-week-and-it-was-glorious/|url-status=live}}</ref> However, the FSF does not use the term "open source" and actively advocates against using it, preferring the term "free software" instead.<ref>{{Cite web |last=Stallman |first=Richard |title=Why Open Source Misses the Point of Free Software |url=https://www.gnu.org/philosophy/open-source-misses-the-point.html |access-date=2022-09-28 |website=GNU Project |archive-date=2024-04-25 |archive-url=https://web.archive.org/web/20240425132705/https://www.gnu.org/philosophy/open-source-misses-the-point.html |url-status=live }}</ref>
Cory Doctorow of ''BoingBoing'', discussing Finley's article, said he had used NoScript for years, and got around the problems Finley identified by whitelisting pages with wanted functionality that only works with JavaScript.<ref>{{Cite web|url=https://boingboing.net/2015/11/18/the-web-is-pretty-great-with-j.html|title=The Web is pretty great with JavaScript turned off|date=2015-11-18|website=Boing Boing|language=en-US|access-date=2019-12-23|archive-date=2024-05-22|archive-url=https://web.archive.org/web/20240522173644/https://boingboing.net/2015/11/18/the-web-is-pretty-great-with-j.html|url-status=live}}</ref>
Websites have been criticized or rated based on whether they work without JavaScript or with LibreJS enabled.<ref>{{Cite web|url=https://arstechnica.com/information-technology/2016/06/under-new-management-sourceforge-moves-to-put-badness-in-past/|title=Under new management, SourceForge moves to put badness in past|last=Gallagher|first=Sean|date=2016-06-17|website=Ars Technica|language=en-us|access-date=2019-12-23|archive-date=2024-05-22|archive-url=https://web.archive.org/web/20240522173644/https://arstechnica.com/information-technology/2016/06/under-new-management-sourceforge-moves-to-put-badness-in-past/|url-status=live}}</ref><ref>{{Cite web |last=Neumann |first=Alexander |date=26 April 2016 |title=Free Software Foundation: GitHub und SourceForge kommen bei Hosting-Services-Untersuchung nicht gut weg |url=https://www.heise.de/developer/meldung/Free-Software-Foundation-GitHub-und-SourceForge-kommen-bei-Hosting-Services-Untersuchung-nicht-gut-3186114.html |access-date=2019-12-23 |website=Developer |language=de}}</ref>
== See also == {{Portal|Free and open source software}} *NoScript
==References== {{Commons category|GNU LibreJS}} {{Reflist}}
== External links == *[https://www.gnu.org/software/librejs/ LibreJS] on gnu.org
{{FOSS}}
LibreJS Category:JavaScript Category:Free Firefox WebExtensions Category:Software using the GNU General Public License