Whole Antidetect Catalog Donut Browser

Catalogue · LibreWolf · Alternatives

LibreWolf alternatives

3 entries in this register are declared substitutes for, successors to or predecessors of LibreWolf, and all of them are still shipping at the last field check. LibreWolf itself reads ACTIVE. Every row in the table below is judged by the same rubric, from the same sweep, on the same fields — this page ranks nothing and recommends nothing, because a register that has measured no population is in no position to.

Every row below is judged by the same rule as LibreWolf itself, from the same field check. Supersession is only printed where a project or its author says so — this register does not infer that one tool replaces another because it is newer.


Entry Relation Licence Last push Latest release State
LibreWolf this entry MPL-2.0 — — ACTIVE
arkenfox/user.js alternative MIT 2026-08-10 — ACTIVE
Brave Browser alternative MPL-2.0 2026-08-14 — ACTIVE
Mullvad Browser alternative NO LICENCE DECLARED 2026-07-23 — ACTIVE

Read the state column with the licence column. A permissively licensed project that stopped shipping is not safer than a copyleft one that did not.


What LibreWolf does, so you know what you are replacing

A Firefox fork that ships with resistFingerprinting enabled and telemetry stripped, so the uniformity behaviour Mozilla keeps behind a preference is the default rather than an opt-in.

A substitute has to do that job, not merely occupy the same category. resistFingerprinting normalises a fixed list of surfaces and leaves the rest alone; knowing that list is the difference between a defence and a comfort. The build recipes live outside the address listed here, so audit those if reproducibility matters to you.

How this register decides what counts as an alternative

arkenfox/user.js, Brave Browser, Mullvad Browser are recorded as substitutes for the same job. The alternative relation is symmetric and carries no ordering at all: it says these things answer the same question, and it says nothing whatsoever about which answers it better.

Nothing on this page is a ranking, a score or a recommendation, and nothing on it is a detection-test result — no entry in this register has been run against any anti-bot system by this register. What the table gives you is four measured columns and one derived one, applied identically to every row.

How to read the comparison above

Every candidate reads ACTIVE or SEMI, so the choice here is genuinely about fit rather than about survival. Compare the release column rather than the push column: a project that pushes constantly and tags rarely asks you to depend on a branch, which is a different commitment from depending on a version.

1 of the entries in the table declare no licence at all — Mullvad Browser. Read that column before the state column if you intend to ship anything: an absent licence file is an absent grant, and no amount of recent activity substitutes for one. Every no-licence entry in the register is grouped together for the same reason.

Full entries

LicenceMIT
Pushed2026-08-10
Release—
Stars12.8k
StateACTIVE
Silent4 d

arkenfox/user.js

ACTIVE

The reference hardened Firefox user.js, and the most careful public writing on what resistFingerprinting actually does.

Source

Evidence

Why ACTIVE: pushed_at = 2026-08-10 — 4 days, within the 90-day ACTIVE threshold.

FieldValue at this printing
pushed_at2026-08-10
archivedfalse
latest_release—
license.spdx_idMIT
stargazers_count12800
http_status200
fetched_at2026-08-14T09:12:00Z
rubric_edition2nd, in force

Endpoint: GET https://api.github.com/repos/arkenfox/user.js

unauthenticated · 60 req/hr

A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON

See also · superseded by · alternatives

LicenceMPL-2.0
Pushed2026-08-14
Release—
Stars23.3k
StateACTIVE
Silent0 d

Brave Browser

ACTIVE

Ships farbling: randomised per-session noise on canvas, audio and WebGL readouts, as a shipped consumer default.

Source

Evidence

Why ACTIVE: pushed_at = 2026-08-14 — 0 days, within the 90-day ACTIVE threshold.

FieldValue at this printing
pushed_at2026-08-14
archivedfalse
latest_release—
license.spdx_idMPL-2.0
stargazers_count23300
http_status200
fetched_at2026-08-14T09:12:00Z
rubric_edition2nd, in force

Endpoint: GET https://api.github.com/repos/brave/brave-browser

unauthenticated · 60 req/hr

A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON

See also · superseded by · alternatives

LicenceNO LICENCE DECLARED
Pushed2026-07-23
Release—
Stars2.5k
StateACTIVE
Silent22 d

Mullvad Browser

ACTIVE

Tor-Browser-derived hardened Firefox pursuing one fingerprint for all users rather than a unique one per user.

No licence declared

Source

Evidence

Why ACTIVE: pushed_at = 2026-07-23 — 22 days, within the 90-day ACTIVE threshold.

FieldValue at this printing
pushed_at2026-07-23
archivedfalse
latest_release—
license.spdx_idnull (none declared)
stargazers_count2500
http_status200
fetched_at2026-08-14T09:12:00Z
rubric_edition2nd, in force

Endpoint: GET https://api.github.com/repos/mullvad/mullvad-browser

unauthenticated · 60 req/hr

A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON

No SPDX identifier is declared on the repository; the upstream it derives from is MPL. That is inference, not a field, so the licence column stays empty. — ED.

See also · superseded by · alternatives


Questions about replacing LibreWolf

Answered from the same fields the table above prints, and from no other source.

What is the best alternative to LibreWolf?

This register does not answer that, because it publishes no ranking and has tested no tool to rank. What it can tell you is which candidates are still shipping: arkenfox/user.js, Brave Browser, Mullvad Browser. The rest of the decision is fit, licence and how much of your own stack you are prepared to change.

Are these LibreWolf alternatives still maintained?

arkenfox/user.js reads ACTIVE, Brave Browser reads ACTIVE, Mullvad Browser reads ACTIVE. Each of those states is derived from that entry's own measured fields by the rubric in force, at the field check printed in the folio, and the clause that produced it is printed on the entry page.

Why does this list not rank the alternatives?

Because a ranking would be an opinion wearing a number's clothes. Every figure on this site is a date, a count, an SPDX identifier or an HTTP status you can re-fetch from the endpoint named beside it, and there is no honest way to compress those into an ordering without inventing weights nobody published. The rubric sets states; it does not rate them against each other.

Where does the alternatives data for LibreWolf come from?

From declared edges in the register itself, never inferred. Each edge is stored once and reversed at build time, and every field in the table is read from the same sweep that produced the rest of the catalogue. The whole set is downloadable as CC0 JSON and CSV, including the supersedes, superseded_by and alternative_to columns.


You are reading section 01, which is where the browsers live, so the comparison is direct: Donut Browser is filed here too, under the same rule, with the same fields printed against it. What it does differently is where the spoofing happens — the Wayfern Chromium fork applies fingerprint overrides at engine level over CDP rather than by patching page JavaScript after load, which is the same architectural argument several of its neighbours in this section make and a different implementation of it.

Download Donut Browser

curl -fsSL https://donutbrowser.com/install.sh | sh

macOS · Windows · Linux · Nix. Desktop only. Source, AGPL-3.0 · The LibreWolf entry in full · Section 01 · the keepers' disclosure