gitwtfhub

wtf is user.js?

arkenfox/user.js — explained in plain English

Analysis updated 2026-06-24

12,515JavaScriptAudience · generalComplexity · 2/5Setup · easy

TL;DR

A privacy-hardening configuration file for Firefox that blocks tracking and browser fingerprinting, download and place it in your Firefox profile folder and it applies automatically every time the browser starts.

Mindmap

mindmap
  root((arkenfox user.js))
    What it does
      Blocks tracking
      Stops fingerprinting
      Hardens Firefox settings
    How it works
      user.js file in profile
      Applied at browser start
      Override file for exceptions
    Resources
      Settings wiki
      Interactive config tool
      Changelogs
    Limitations
      Some sites will break
      Desktop Firefox only
      Not for Tor Browser

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Apply a battle-tested privacy configuration to Firefox to reduce cross-site tracking and browser fingerprinting.

REASON 2

Use the wiki and interactive tool to understand and selectively enable or disable individual privacy settings.

REASON 3

Create a user-overrides.js file to restore functionality on specific sites without editing the main configuration.

What's in the stack?

JavaScriptFirefox

How it stacks up

arkenfox/user.jsamfe/lib-flexibleredux-form/redux-form
Stars12,51512,52912,493
LanguageJavaScriptJavaScriptJavaScript
Setup difficultyeasyeasymoderate
Complexity2/52/53/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 30min

Some websites will break with default settings, a user-overrides.js file is the recommended way to restore functionality on a site-by-site basis.

No license information is mentioned in the explanation.

Wtf does this do

Firefox browsers store their settings in various places, and one way to configure them is through a special file called user.js. When Firefox starts up, it reads this file and applies whatever settings are listed inside. The arkenfox user.js project provides a carefully crafted version of this file that sets Firefox to prioritize privacy, reduce tracking, and block fingerprinting (a technique websites use to identify you based on your browser's unique characteristics). The goal is to protect people from being tracked across the web while keeping the browser usable. The project acknowledges upfront that some websites will break or behave unexpectedly when these settings are active, because the settings restrict behaviors that many sites depend on. Some loss of functionality is unavoidable. This is not a browser extension you install from a store. It is a configuration template file you download and place in your Firefox profile folder. The project includes a wiki with explanations of individual settings, an interactive web tool for browsing the current configuration options, and changelogs tracking each update. The project is built specifically for the desktop version of Firefox and is not recommended for other Firefox-based browsers, including the Tor Browser, which ships with its own separate privacy configuration. If you need to browse over the Tor anonymity network, the maintainers recommend using the official Tor Browser rather than this configuration file. The README is intentionally brief and directs most users to the wiki for guidance on specific settings and how to apply them correctly.

Yoink these prompts

Prompt 1
I installed arkenfox user.js but a website I need is broken. How do I identify which setting is causing it and override just that setting for my use?
Prompt 2
Explain what browser fingerprinting is and walk me through exactly how arkenfox user.js settings block it.
Prompt 3
Help me write a user-overrides.js file that re-enables WebRTC and canvas access for a video-calling site without touching the rest of the arkenfox config.

Frequently asked questions

wtf is user.js?

A privacy-hardening configuration file for Firefox that blocks tracking and browser fingerprinting, download and place it in your Firefox profile folder and it applies automatically every time the browser starts.

What language is user.js written in?

Mainly JavaScript. The stack also includes JavaScript, Firefox.

What license does user.js use?

No license information is mentioned in the explanation.

How hard is user.js to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is user.js for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.