Open-source project
uBlockOrigin/uAssets avatar
uBlockOrigin/uAssets

uAssets: The Filter List Repository Behind uBlock Origin's Breakage Fixes

Filter lists for uBlock Origin & uBlock Origin Lite. Any filters included in uBO's filter lists must use the extended syntax.

6,009 stars1,036 forksAdblock Filter ListGPL-3.0

At a glance

What is it?
uAssets is the resource repository for uBlock Origin and uBlock Origin Lite, hosting filter lists that fix website breakage and ad reinsertion. It operates under strict inclusion policies and a preference for upstream EasyList fixes.
Who is it for?
Adopt uAssets if you are a uBO or uBOL user who wants breakage fixes that are vetted against EasyList policies and extended syntax requirements, or if you are a contributor willing to follow the strict reporting procedure. Do not adopt it if you expect support for paywalls, annoyances, or porn farms, or if you want to request new filter lists, as those are explicitly declined.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly Adblock Filter List, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The Problem uAssets Solves: Filter Maintenance for uBO and uBOL

uAssets exists to maintain the filter lists that uBlock Origin and uBlock Origin Lite use to block ads and fix website breakage. Without a central repository, filter updates would be scattered, and users would have to rely on stale lists. The repository collects reports of new filters or existing filters that cause web page breakage, then curates fixes. It is not a general-purpose ad-blocking list; it is the resource layer for uBO and uBOL. The intended audience is uBO and uBOL users who encounter broken pages, and contributors who want to report or fix filter issues. The repository also serves as a staging ground for fixes to high-traffic websites until those fixes are accepted into EasyList. This is a narrow but essential role: it keeps the default filter lists working without requiring users to manage custom filters.

How It Works: The Inclusion Policy and Extended Syntax Requirement

The repository's operation is governed by a clear policy. Any filter included in uBO's filter lists must use the extended syntax, which is documented in the uBlock wiki. This means filters that rely on uBO-specific capabilities, such as procedural cosmetic filters or scriptlet injections, are allowed, but plain EasyList-style filters are not preferred. The rationale for including a filter follows the EasyList/EasyPrivacy policies, and the repository explicitly prefers to fix filter issues in EasyList rather than duplicating them. For high-traffic websites, EasyList-compatible fixes are added to uAssets temporarily until they are merged upstream. This two-tier approach means uAssets is a fallback, not a primary source. The data flow is: a user reports a breakage issue, maintainers evaluate it against the policy, then a fix is added either to uAssets or forwarded to EasyList. The repository also lists specific exceptions it will fix even without extended syntax: ad reinsertion, anti-blocker, context menu blockage, cut/copy/paste blockage, popups/popunders, website breakage, and video ads. Everything else, including paywalls, porn farms, and annoyances like social media buttons or newsletter requests, is out of scope.

Getting It Running: Reporting Issues and Using Troubleshooting Information

You do not install uAssets; it is already bundled with uBO and uBOL. The repository is for reporting issues, and the README gives exact steps. For uBO, you open a new tab, go to the affected page, click the uBO icon, then the chat icon, select Troubleshooting Information, select all, and copy the contents. Paste that into the appropriate GitHub thread. For uBOL, the steps are similar: click the uBOL icon, click the menu item for Report an issue, then copy the troubleshooting information. The critical first step is to disable all other browser extensions and confirm the issue still occurs. If it does not, the problem is not with uBO or uAssets. This workflow is rigorous and requires users to provide diagnostic data, not just a URL. The repository also directs users to the /r/uBlockOrigin subreddit for support, and to separate issue trackers for uBO and uBOL bugs. There are no commands to run or configuration keys to set; the interaction is through GitHub issues.

Limitations and Failure Modes: What uAssets Will Not Do

The most significant limitation is the explicit exclusion of paywalls, porn farms, and annoyances. If a website uses a paywall that requires disabling ad blocking, uAssets will not fix it. Similarly, social media buttons, newsletter popups, and donation requests are ignored. This is a deliberate scoping decision, but it means users who expect a comprehensive annoyance filter will be disappointed. Another failure mode is the dependency on EasyList. Since the repository prefers fixes in EasyList, a breakage fix may be delayed until EasyList accepts it. For high-traffic sites, uAssets provides temporary fixes, but for less popular sites, the fix may never arrive. Also, the repository does not accept new filter list requests; they are declined and closed. This is a hard boundary that prevents scope creep but also limits community-driven expansion. Finally, the README warns against using other similarly-purposed blockers concurrently with uBO, as it can cause breakage or undefined results. This is a practical constraint: uAssets is tuned for uBO alone, and running another blocker defeats its purpose.

The Alternative: EasyList and the Upstream-First Approach

The real alternative to uAssets is EasyList itself, along with EasyPrivacy. uAssets explicitly follows EasyList policies and prefers to fix issues there. The difference in approach is that EasyList is a broader, community-maintained list that covers many ad-blocking tools, while uAssets is uBO-specific and only adds filters that require extended syntax or are temporary fixes for high-traffic sites. If you use uBO, you already get EasyList as part of the default filter lists; uAssets adds the uBO-specific layer on top. For users of other blockers like Adblock Plus, uAssets is irrelevant because those blockers cannot use extended syntax. The upstream-first strategy means that uAssets does not compete with EasyList; it complements it. A user who wants a more comprehensive list might prefer EasyList alone, but they would lose uBO-specific fixes. This is a trade-off: uAssets is a safety net, not a replacement.

Maintenance and Upgrade Cost: Continuous Reporting and Upstream Dependency

Maintenance cost for users is low: you do nothing except update uBO, which pulls uAssets updates automatically. The cost is on the contributors and maintainers. The repository receives all reports for new filters or breakage, and contributors who prove valuable get write permissions. This is a merit-based model, but it means the quality depends on active community involvement. The upgrade cost is tied to EasyList's pace. If EasyList is slow to accept a fix, uAssets carries the temporary filter, but that filter may need to be removed once upstream merges it, requiring ongoing coordination. For users, the main cost is the troubleshooting procedure: every time you encounter breakage, you must disable other extensions, reproduce the issue, and paste troubleshooting information. This is a high barrier for casual users. Licence-wise, the repository is GPL-3.0, which means any derived filter lists must also be GPL-3.0. If you plan to reuse uAssets filters in a proprietary project, that is not allowed without a separate licence. This is a legal constraint to verify before adoption.

Who Should Adopt It and What to Verify First

uAssets is not a standalone tool; it is a component of uBO and uBOL. Adoption means using uBO or uBOL as your blocker. If you do, uAssets is already active. The question is whether you should rely on it as your primary breakage fix. For users who accept the scope exclusions and the upstream dependency, it works. For those who need paywall bypasses or annoyance removal, it is the wrong tool. Before adopting, verify that you are not running another blocker, because the README explicitly warns against it. Also, verify that your browser version is supported by uBO or uBOL, since the troubleshooting steps assume you can access the extension's icon. If you are a contributor, verify that you can provide the exact troubleshooting information, because reports without it will likely be rejected. The repository's future is tied to EasyList's health and the continued maintenance of uBO. It is a pragmatic, narrowly scoped project that does one thing well: keeping uBO's default filter lists free of breakage-causing filters, within the limits it sets for itself.

Editorial conclusion

Adopt uAssets if you are a uBO or uBOL user who wants breakage fixes that are vetted against EasyList policies and extended syntax requirements, or if you are a contributor willing to follow the strict reporting procedure. Do not adopt it if you expect support for paywalls, annoyances, or porn farms, or if you want to request new filter lists, as those are explicitly declined. Before relying on it, verify that you are not running any other similarly-purposed blocker concurrently, and check the troubleshooting information from your browser to ensure your issue is reproducible with all other extensions disabled. The repository is the authoritative source for uBO's filter lists, but its value depends on your willingness to abide by its narrow scope and its preference for fixing issues upstream in EasyList rather than directly.

Official sources

  1. Official README
  2. Project repository
Community notes

Community notes