HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
gorhill
uBlock
JavaScript2014–2026
gorhill / uBlock

uBlock

uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.

554Distinct people
875Mentions
11Explicit recommenders
69.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.

GitHub

Where it is used

  • LibreWolf — LibreWolf includes uBlock Origin in the browser. Source
  • Mullvad Browser — Mullvad Browser uses uBlock Origin to block third-party trackers. It includes this extension as part of its tracker-blocking approach. Source

What people are saying

You should look into the homepage linked from there https://github.com/gorhill/uBlock because that's were it's really from, and not some recommendation via. Especially their…

LargoLasskhyfv used a recommendation phrase. 12 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 6:01:32 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year875 dated mentions

Observed mentions: 2014-06-24 09:19:53 UTC to 2026-10-13 19:36:47 UTC.

0501002014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 24 mentions; 4 submissions, 20 comments20142015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 127 mentions; 13 submissions, 114 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 70 mentions; 3 submissions, 67 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 53 mentions; 2 submissions, 51 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 67 mentions; 2 submissions, 65 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 59 mentions; 4 submissions, 55 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 76 mentions; 3 submissions, 73 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 85 mentions; 5 submissions, 80 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 92 mentions; 7 submissions, 85 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 99 mentions; 9 submissions, 90 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 52 mentions; 3 submissions, 49 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 45 mentions; 2 submissions, 43 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 26 mentions; 0 submissions, 26 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC24420
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC12713114
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC70367
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC53251
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC67265
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC59455
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC76373
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC85580
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC92785
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC99990
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC52349
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC45243
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC26026

From the project README

An excerpt from the repository, fetched Nov 12, 2026.

Read the project’s introduction
uBlock Origin (uBO) Browser Install from ... Status Firefox Add-ons uBO works best on Firefox Edge Add-ons "Moving the Microsoft Edge extensions ecosystem forward with Manifest Version 3": "Beginning in August 2026, Microsoft Edge will start the consumer transition away from Manifest Version 2 (MV2) extensions and toward MV3. Our goal is to complete the consumer transition by the end of 2026, with enterprise deprecation following in early 2027." Opera Add-ons Removed "Manifest V2 support timeline": "Aug 31st 2026: All remaining Manifest V2 extensions removed from the Chrome Web Store" About Google Chrome's "This extension may soon no longer be supported" Thunderbird Add-ons No longer updated and stuck at 1.49.2. Later versions require "GitHub - Releases". GitHub - Releases Stable and development versions on Firefox, Chromium MV2, and Thunderbird. Must be placed manually into web browsers; the Chromium and Thunderbird versions usually won't auto-update. Related: uBlock Origin Lite uBlock Origin (uBO) is a CPU and memory-efficient wide-spectrum content blocker for Chromium and Firefox. It blocks ads, trackers, coin miners, popups, annoying anti-blockers, malware sites, etc., by default using EasyList, EasyPrivacy, Peter Lowe's Blocklist, Online Malicious URL Blocklist, and uBO filter lists. There are many other lists available to block even more. Hosts files are also supported. uBO uses the EasyList filter syntax and extends the syntax to work with custom rules and filters. You may easily unselect any preselected filter lists if you think uBO blocks too much. For reference, Adblock Plus installs with only EasyList, ABP filters, and Acceptable Ads enabled by default. It is important to note that using a blocker is NOT theft. Do not fall for this creepy idea. The ultimate logical consequence of blocking = theft is the criminalization of the inalienable right to privacy. Ads, "unintrusive" or not, are just the visible portion of the privacy-invading means entering your browser when you visit most sites. uBO's primary goal is to help users neutralize these privacy-invading methods in a way that welcomes those users who do not wish to use more technical means. Documentation Installation Firefox Chromium Thunderbird All Programs Enterprise Deployment Release History Translations About Documentation Basic Mode Advanced Mode The simple popup user interface for an install-it-and-forget-it type of installation that is configured optimally by default. The advanced popup user interface includes a point-and-click firewall that is configurable on a per-site basis. Visit the Wiki for documentation. For support, questions, or help, visit /r/uBlockOrigin. Installation Required Permissions Firefox Firefox Add-ons Development Builds uBO works best on Firefox and is available for desktop and Android versions. Chromium Chrome Web Store: Removed on 2026-08-31 Microsoft Edge Add-ons (Published by Nicole Rolls until version 1.62. Ownership transfer at version 1.64.) Opera Add-ons uBO should be compatible with any Chromium-based browser. Thunderbird Thunderbird Add-ons In Thunderbird, uBlock Origin does not affect emails, just feeds. All Programs Do NOT use uBO with any other content blocker. uBO performs as well as or better than most popular blockers. Other blockers can prevent uBO's privacy or anti-blocker-defusing features from working correctly. Manual Installation Enterprise Deployment Deploying uBO Release History Releases Page Translations Help translate uBO via Crowdin. About Manifesto Privacy Policy GPLv3 License Free. Open-source. For users by users. No donations sought. If you ever want to contribute something, think about the people working hard to maintain the filter lists you are using, which are available to use by all for free.
Read the full README on GitHub

What Hacker News says

99 sources
> "Its happened before" > That's not an argument It's a subheading to "2. Browser engine monopoly". The subsection's purpose is describing how bad things were during the IE monopoly to reinforce that it's something to be avoided. > in fact you could counter-argue that IE left a lot of technical debt That would be agreeing with the article, unless I misunderstand what you mean. > On top of that, the internet was very different back then. In a way that now makes it harder for truly new competing engines to pop up due to increased complexity of the web. > I'm still not convinced, why would I change my browser? The points made in the article are: * Increased privacy, opposed to willingly giving your data to an ad-tech company * Helps avoid a browser engine monopoly which would effectively let Google dictate web standards * It’s fast and has a
Read the rest
nice user interface Onto which I'd add: * Content blockers work best on Firefox (https://github.com/gorhill/uBlock/wiki/uBlock-Origin-works-b...), doubly so once Manifest V3 rolls out * Allows more customization of interface and home page * UX improvements, like the clutter-free reader mode, aren't vetoed to protect ad revenue as with Chrome (https://news.ycombinator.com/item?id=37675467)
In In 2024, please switch to Firefox
Advertising networks are vectors for malware: https://www.cisecurity.org/insights/blog/malvertising https://www.malwarebytes.com/malvertising https://theconversation.com/spyware-can-infect-your-phone-or... Even the FBI recommends ad blockers: https://www.ic3.gov/Media/Y2022/PSA221221?=8324278624 So if you're concerned about security then you want the browser with the best ad blocker. uBlock Origin works best in Firefox: https://github.com/gorhill/uBlock/wiki/uBlock-Origin-works-b...
In Ask HN: Is Firefox team too small to do serious security tests?
If you have no knowledge you can still make use of element picker in the context menu. In this case though the problematic element will have a generated class name like `frontend-components-SubscribePrompt-<random>`, so I resorted to the CSS syntax (`<hostname>##<css selector>`). There are a lot, a freaking lot of them [1] but the CSS syntax alone can achieve a lot. [1] https://github.com/gorhill/uBlock/wiki/Static-filter-syntax
In How many lines of C it takes to execute a + b in Python
With uBlock Origin working as it works best on Firefox, I get a 3-5 sec lag on launch [0] as it prepares the browser to block ads. With Chrome, the launch happens in an instant. I should also mention that Firefox has always had a slow start up time on my machine. While am sure there is a setting to turn the uBlock feature off, it probably won't make enough of a difference to beat Chrome's start up time. [0] https://github.com/gorhill/uBlock/wiki/uBlock-Origin-works-b...
In Choose the browser that best suits your privacy needs
Google's marketing is sooo good. Instead of giving Mozilla the benefit of the doubt, many people are instead instantly complaining that Firefox is not better and it's worth sticking with Chrome anyways. Chrome has not been supporting proper content blocking for years. E.g. Chrome will not wait for content blockers to initialize before sending out requests, so the first website that opens when you start Chrome is probably not content blocked. https://github.com/gorhill/uBlock/wiki/uBlock-Origin-works-b...
In Choose the browser that best suits your privacy needs
I'd like clarification on something. I've spent an hour or two trying to figure this out to no avail, so I suspect many other people might be wondering the same thing I am. Examining the Manifest V3 changes more closely (https://developer.chrome.com/docs/extensions/mv3/intro/mv3-o...), and comparing/contrasting to what uBlock Origin themselves say about it (https://support.ublock.org/hc/en-us/articles/11749958544275-...), I can understand the cause of one of uBO's problems with V3... but not the other. The cause of "Allow List Limits" is clear: uBO Lite will be forced to use declarativeNetRequest; and declarativeNetRequest imposes limits on the size of the ruleset you can "declare". But I'm confused about uBO's point on "Ad Blocking Quality". It seems that Manifest V3 only restricts 1. the use of eval(), and 2. the loading of remote-origi
Read the rest
n scripts into the DOM and/or as service-worker modules. It doesn't restrict the use of remote-origin-loaded data files generally; which I would presume means that uBO would still be able to use its service-worker to periodically fetch and update its filter lists. Is there some part of the way uBO uses these filter lists, that requires arbitrary remote code execution (and for which the only true substitute is burning in the lists locally?) If so: why, exactly? (Not a rhetorical question; I'm not doubting that they do need it. I just can't figure out where the need comes from, and I'd like to know!) It might seem at first blush that the literal answer is this feature: https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#... ... but it actually isn't, as you don't write actual JS to be eval()ed in these rules, but rather just name a function that's already burned into the extension locally as part of its "scriptlet resource library". Is it instead, just the way that these rules get "baked down" into in-page logic? Does uBO compile the lists into a bunch of Javascript source-code, and then have the page evalScript() that code? And if that is the blocking issue — and I'm still not clear that it is — then wouldn't there be other workarounds for this? For example, sticking the generated JS code into a data: URL and then dropping it into the page as a <script> tag. Or even, at worst, swapping out feeding the page "JS source code", for feeding the page a (static!) interpreter, and then having that interpreter receive instructions as regular ol' data from the uBO service-worker? (Maybe that'd violate uBO's performance goals, I suppose? But it wouldn't have to do it on every page; only on pages that it knows from the ruleset can't be blocked entirely declaratively.)
In Chrome pushes forward with plans to limit ad blockers in the future

Showing the 15 most recent of 99 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.