Our first response to the problem of nonfree JS code was to develop LibreJS, which enables Firefox-based browsers to detect and block that code. That protects us from running a site's nonfree JS programs, but does not make the site actually function. Writing an extension for it, as we propose here, would achieve that. It would also avoid the risk inherent in running software straight off someone else's website.
It is impossible to implement real security via JS code sent to the user, but whatever the site does to try to implement something resembling security, the extension should carry out faithfully. In particular, if the site asks the user to answer questions to prove perself not to be a robot, the extension should show per the same questions, get the answers, and send them in—thus enabling per to demonstrate that perse is human.
Jeff Carpenter's librecaptcha might be useful if the site sends a captcha. We will start a project to convert it to JS, and we will need volunteers for that, so please write to me if you are interested in helping.
Meanwhile, if the site's JS code gathers information surreptitiously, it is admirable to thwart that snooping. One idea is to ask the user what answer to return—for example, “The site is trying to find out your location. What do you want to tell it?” But it would be good to avoid asking the user frequently or repeatedly.
When you have an extension working, please mail a copy to the GNU Project at <email@example.com>. You can also register it in Firefox's extensions list, if you can stomach running the nonfree software to do that.
We have set up a mailing list, js-extensions-discussion where you can talk with others who are developing extensions.
Once things are going, we would like to set up a savannah.gnu.org repo where we will put the extensions that are working. To do that, we need a volunteer or two to manage it. We expect this task not to be a lot of work; the reason to have two is for redundancy.
We could also have a Savannah project which you could (if you wish) use for developing an extension; that too would require volunteers to take care of it.
Here are some suggestions for sites to write extensions for. However, if some other site interests you more, by all means go where your interests take you.
Sites for accessing information and publications
The initial goal is to handle anonymous access. To handle logging in, and logged-in access, is going beyond the short-term call of duty.
Petition-signing sites (to let the user sign)
Other kinds of sites
Sites that people have handled in this way
- The author uses the gender-neutral third person singular pronouns and possessive adjective “perse,” “per,” “perself,” and “pers.”