Topic Filter for X: A Free Extension That Hides Topics Permanently
Topic Filter for X is a free Chrome extension from Urbano DX that removes the topics you choose from your X (Twitter) feed. Not for 24 hours, which is all X's built-in "snooze" gives you, but permanently, until you turn the filter off.
It is live now: xfilter.urbanodx.com and on the Chrome Web Store.
The Itch
X knows some topics wear people out: it ships a native mute for them. But that mute expires after 24 hours, every time. If you never want election threads, transfer rumors, or coin charts in your feed again, the platform's answer is to click snooze every single day, forever.
That gap between "what the platform offers" and "what a user actually wants" is exactly the kind of small, sharp problem we like: well-defined, personally annoying, and solvable with a focused piece of software.
What It Does
Ten filterable topics out of the box: politics, sports, business, science and tech, entertainment, AI, games, crypto, religion, and videos. Each can be toggled independently.
Editable keyword and account lists per topic, with careful matching that catches "$BTC" and "elections" without ever confusing "supermarket" with "market".
An optional semantic mode that catches on-topic posts the keywords miss, powered by a small AI model that runs entirely inside your browser.
A live badge counting what you no longer see.
English and Spanish UI, with bilingual keyword lists in both languages.
The part we care most about: tweets are removed before they render. No blank holes in the feed, no flicker, no trace. The timeline simply reads as if those posts never existed. How that works is an engineering story of its own, told in the companion post.
Private By Construction
The extension has no backend, no account, no telemetry, and no analytics. Your timeline is filtered inside your own browser and nothing about what you read, filter, or do ever leaves it. The optional semantic mode downloads its model weights once and then works fully offline. This is not a privacy policy promise that requires trust; there is simply no server to send anything to.
From Itch To Store Shelf
The build itself is a small case study in how we ship:
Built and live-tested in days. The core interception approach was validated against the real X web app, not a mock, from day one.
A landing page with a fallback plan. While the extension sat in Chrome Web Store review, xfilter.urbanodx.com collected launch-notification emails. The day the listing went live, the same page flipped every call to action into a direct store link.
Releases are automated. Publishing a new version is now: bump the version number, push. Tests run, the extension is packed, uploaded through the Chrome Web Store API, and auto-published. No manual zip uploads, no dashboard clicking.
That last point matters beyond this one product. The same discipline we sell to clients, one command from change to production, applies to a free browser extension exactly as it does to a business platform.
Try It
Install it from the Chrome Web Store, open x.com, and watch the badge count what you stopped seeing. If you want a note when a meaningful update ships, the site has a one-field email form and that is the only thing the address is ever used for.
And if your team has its own version of "the platform almost does what we need": that is what we build.