This is a submission for the DEV April Fools Challenge
Adblock Not
Have you ever sat there watching a youtube ad and said "dang, I just wish there were more ads?" Welcome to AdblockNot!
What I Built
I built Adblock Not, the ad blocker you've never wanted.
Most ad blockers try to make the web less annoying. Adblock Not takes the opposite approach. It sees your desire for an ad-free experience and responds with the worst possible product decision: before it blocks ads, it makes you watch one.
Not a skippable one, either.
To make this bad idea feel more official, I wrapped the whole thing in a fake early-2000s cable/satellite interface. The overlay looks like a retro TV guide, the ads are presented like channels, and if you do not like the current ad, you can always change the channel to a different ad.
I also wanted it to tap into a very specific kind of commercial nostalgia: the era of weird infomercials, overdramatic voiceovers, late-night paid programming, and commercials you did not exactly love, but somehow still remember forever.
That is the entire value proposition:
- it is an ad blocker built on a terrible premise
- it treats ad blocking like premium content authorization
- it adds friction where absolutely none was needed
- it is less a utility and more a hostage negotiation with nostalgic television design
The current lineup includes multiple gloriously inconvenient commercials, including Fushigi, Education Connection, Nike Football, Sears, and Zoobooks.
So yes: I made software whose core feature is disrespecting your time in a more organized and stylish way.
Demo
Code
Adblock Not
Adblock Not is the ad blocker you've never wanted.
It is a joke Chrome MV3 extension built around a deliberately terrible idea: before it blocks ads, it makes you watch an ad. To make the experience feel more official, the whole gate is wrapped in a retro early-2000s TV interface with channel switching, a fake guide, and a lineup of bundled commercials.
This is not a serious ad blocker. It is an anti-product with excellent commitment to the bit.
What It Does
- Detects when a page should show the
Adblock Notgate. - Opens a fullscreen retro TV-style overlay before ad blocking is allowed.
- Makes you watch one of several bundled ad videos to completion, or wait through a fallback timer if playback fails.
- Lets you "change the channel" to a different ad, which is obviously not real relief.
- Includes a retro guide UI so you can manually pick…
How I Built It
Adblock Not is a Chrome Manifest V3 extension built with plain JavaScript, HTML, and CSS.
The basic idea was simple: if an ad blocker is supposed to remove interruptions, I wanted to build one that introduces a brand new interruption first.
The extension injects a fullscreen content-script overlay onto pages, then uses a background service worker to track whether the user has satisfied the completely unnecessary ad-watching requirement.
Main pieces:
-
manifest.jsonwires up the MV3 extension, content script, service worker, and bundled media assets. -
src/content/gate-overlay.jsrenders the fake TV UI, loads the bundled ad videos, handles channel switching, opens the guide, and controls the unlock flow. -
src/content/gate-overlay.cssgives the whole experience the retro cable-box look. -
src/background/service-worker.jsstores unlock state and decides whether the gate should appear.
Some of my favorite details:
- The entire joke works because the product logic is coherent. Every part of it is committed to making ad blocking slightly more annoying.
- The guide UI is based on old cable/satellite channel guides because that era already felt one tiny step away from self-parody.
- The bundled ads are part of the joke, but they are also part of the nostalgia. They come from that very specific "how is this on television again?" era of commercials that burned themselves into your brain.
- The video player uses custom controls to keep the fake-TV vibe intact.
- "Change the channel" is my favorite feature because it sounds like a mercy feature, but it is actually just a different route to the same suffering.
Technically, it was also a fun constraint: make something that is dumb on purpose, but polished enough that the joke lands immediately.
Prize Category
Primary category:
Community Favorite
Why:
I built this as a pure anti-product. The concept is immediate, the joke is obvious, and the whole thing is committed to the bit: an ad blocker that forces you to watch ads before it helps you avoid ads.
Alternate category I could also argue for:
Best Ode to Larry Masinter
Why:
The project is built in the spirit of lovingly useless internet/software humor. It is not practical, it is not responsible, and it is absolutely committed to the bit.



Top comments (0)