- Notifications You must be signed in to change notification settings
- Fork 0
- Star 16
- Code
- Pull requests 0
- Actions
- Projects
- Security and quality 0
- Insights
Folders and files
| Name | Name | Last commit message | Last commit date |
|---|---|---|---|
Latest commitHistory769 Commits769 Commits | |||
| .github | .github | ||
| chromium | chromium | ||
| dist | dist | ||
| docs | docs | ||
| firefox | firefox | ||
| publish-extension @ bb920c7 | publish-extension @ bb920c7 | ||
| uBlock @ fa2de61 | uBlock @ fa2de61 | ||
| .gitignore | .gitignore | ||
| .gitmodules | .gitmodules | ||
| .jshintrc | .jshintrc | ||
| CHANGELOG.md | CHANGELOG.md | ||
| CLAUDE.md | CLAUDE.md | ||
| LICENSE | LICENSE | ||
| Makefile | Makefile | ||
| README.md | README.md | ||
| eslint.config.mjs | eslint.config.mjs | ||
| package-lock.json | package-lock.json | ||
| package.json | package.json | ||
| View all files |
Repository files navigation
- README
- License

A fork of uBlock Origin Lite that, instead of hiding cosmetically-blocked ads, replaces them with white tiles bearing slogans from John Carpenter's 1988 film They Live: OBEY, CONSUME, WATCH TV, SLEEP, SUBMIT, CONFORM, STAY ASLEEP, BUY, WORK, NO INDEPENDENT THOUGHT, DO NOT QUESTION AUTHORITY.
Each blocked ad gets a single phrase, picked at random from the list.
The idea is from a blog post I wrote in 2015 (and never got around to building): They Live adblock mode.
Download the latest uBOLite_theylive.chromium.zip from the Releases page, extract it, then in Chromium / Chrome / Brave / Edge:
- Open
chrome://extensions - Toggle Developer mode on (top-right)
- Click Load unpacked and select the extracted folder
Keep the folder around — the extension is loaded from that path.
By default uBO Lite uses Basic filtering mode, which blocks ads at the network layer. Network-blocked ads never produce a DOM element, so there's nothing to "they-live-ify" — you just get empty space, as with normal uBO Lite. To see the OBEY tiles:
- Click the uBO Lite toolbar icon → cog (⚙) → Dashboard.
- Set the filtering mode for the sites you care about to Optimal or Complete.
- Reload.
Requires Node 22.
git clone --recursive https://github.com/davmlaw/they_live_adblocker cd they_live_adblocker/uBlock nvm use 22 # or otherwise ensure Node >= 22 tools/make-mv3.sh chromium # or: firefox | edge | safari
The packaged extension lands in uBlock/dist/build/uBOLite.chromium/ — load it as an unpacked extension.
uBO Lite's cosmetic filtering normally injects CSS like selector { display: none !important } to hide matched ad elements. This fork patches those injection sites to instead apply a white-box mask with a ::after overlay whose content is read from a data-ubol-they-live attribute, then walks the DOM (with a MutationObserver for late-loaded ads) to tag each matched element with a random phrase from the list.
Touched files in the davmlaw/uBlock submodule:
platform/mv3/extension/js/scripting/they-live.js(new) — phrase list, CSS generator, DOM taggingplatform/mv3/extension/js/scripting/css-{specific,generic,procedural-api}.js— call sitesplatform/mv3/extension/js/scripting-manager.js— registersthey-live.jsahead of consumers
- Personal hobby fork; not an official uBlock Origin product. Don't file uBO issues against this.
- Forcing previously-hidden elements visible can occasionally shift page layout where the site's CSS assumed the ad slot collapsed.
- Custom user-defined cosmetic filters still hide normally (no OBEY treatment).
- Network-blocked ads (most of uBO Lite's blocking) don't get replaced — only cosmetic-filtered ones do.
GPL-3.0, same as upstream uBlock Origin / uBO Lite.
About
Replace Ads with They Live style slogans
Resources
ReadmeLicense
GPL-3.0 licenseUh oh!
There was an error while loading. Please reload this page.
ActivityStars
16 starsWatchers
0 watchingForks
0 forks Report repositoryReleases 1
v0.1.0-theylive — first build Latest May 11, 2026Packages 0
Uh oh!
There was an error while loading. Please reload this page.
Contributors
Uh oh!
There was an error while loading. Please reload this page.
Languages
- JavaScript 97.0%
- CSS 2.7%
- Other 0.3%