<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Privacy on Home</title><link>https://glsngr.xyz/tags/privacy/</link><description>Recent content in Privacy on Home</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Fri, 24 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://glsngr.xyz/tags/privacy/index.xml" rel="self" type="application/rss+xml"/><item><title>hide-em: A personal attention filter for the web</title><link>https://glsngr.xyz/posts/hide-em/</link><pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate><guid>https://glsngr.xyz/posts/hide-em/</guid><description>&lt;img src="https://glsngr.xyz/posts/hide-em/hero.png" alt="Featured image of post hide-em: A personal attention filter for the web" /&gt;&lt;p&gt;You add a name, keyword, or phrase. Anything matching disappears from any page you visit - YouTube tiles, Reddit cards, search results, articles, feeds. One universal content script. Zero site-specific code.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s the whole product.&lt;/p&gt;
&lt;hr&gt;
&lt;div class="video-wrapper"&gt;
&lt;iframe loading="lazy"
src="https://www.youtube.com/embed/yLgz1yb6FKg"
allowfullscreen
title="YouTube Video"
&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2 id="what-it-does"&gt;What it does
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Block by name&lt;/strong&gt; - a creator, a person, an ex&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Block by keyword or phrase&lt;/strong&gt; - a topic, a spoiler, a product category&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Block by regex&lt;/strong&gt; - for when you need more control&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tune each rule&lt;/strong&gt; - aliases, whole-word matching, and case sensitivity&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Works across sites&lt;/strong&gt; - YouTube, Reddit, news sites, Twitter/X, Google search results, and other dynamic pages&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pause without deleting rules&lt;/strong&gt; - reveal the current tab, pause a hostname temporarily, or exclude a domain&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Manage larger lists&lt;/strong&gt; - search, filter, and test a rule against sample text before saving it&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Import and export rules as JSON&lt;/strong&gt; - move your blocklist manually between machines or browsers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The extension finds the nearest content card around any matching text and hides it cleanly. Not just the matching word - the whole tile, post, or article.&lt;/p&gt;
&lt;p&gt;The toolbar popup also shows whether the scanner is active and exactly how many items are currently hidden. If a broad rule catches too much, you can reveal the page and pause filtering immediately.&lt;/p&gt;
&lt;h2 id="what-it-isnt"&gt;What it isn&amp;rsquo;t
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Not an AI filter.&lt;/strong&gt; There&amp;rsquo;s no model guessing what you probably want to see. Exact text matching, with proper Unicode handling for names with diacritics and other edge cases. If you added the rule, it fires. If you didn&amp;rsquo;t, it doesn&amp;rsquo;t.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Not a thumbnail blocker.&lt;/strong&gt; Text only. If the title doesn&amp;rsquo;t contain the keyword, the card stays visible.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Not a tracker.&lt;/strong&gt; No analytics, telemetry, accounts, or backend. Your blocklist lives in local browser storage and never leaves. The full source is on GitHub - audit it yourself.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Not a community platform.&lt;/strong&gt; Your rules are yours. There&amp;rsquo;s no sharing layer, no suggested blocklists, no social features. JSON import and export is the extent of it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Not an auto-suggester.&lt;/strong&gt; It will never suggest something to block based on your browsing behavior.&lt;/p&gt;
&lt;h2 id="why-i-built-it"&gt;Why I built it
&lt;/h2&gt;&lt;p&gt;I kept running into the same problem: I wanted to mute one specific creator on YouTube, one specific topic on Reddit, and one specific name across news sites - and every existing tool was either limited to one site, phoning home, or had quietly added an AI to decide what I &amp;ldquo;probably&amp;rdquo; wanted filtered.&lt;/p&gt;
&lt;p&gt;hide-em is the simplest version of the tool I wanted. A list of rules, and anything matching disappears. Same engine everywhere.&lt;/p&gt;
&lt;h2 id="privacy"&gt;Privacy
&lt;/h2&gt;&lt;p&gt;Your canonical configuration lives in &lt;code&gt;chrome.storage.local&lt;/code&gt;, not browser-account sync. The background service worker serializes each change, writes it locally, reads it back, and only reports success after verification. A local recovery backup protects against a failed or damaged save.&lt;/p&gt;
&lt;p&gt;Temporary tab and hostname pauses use in-memory session storage and disappear when the relevant tab or browser session ends. Moving rules between devices or browsers is an explicit JSON export and import.&lt;/p&gt;
&lt;p&gt;Users upgrading from version 1.0 get a one-time migration from the old sync-storage format. After migration, hide-em does not continue using cloud sync. Nothing goes to a server I operate - there is no server, remote code, account, analytics, or telemetry.&lt;/p&gt;
&lt;h2 id="browser-support"&gt;Browser support
&lt;/h2&gt;&lt;p&gt;The Chrome Web Store build targets Chrome, Edge, Brave, and other compatible Chromium browsers. A separate &lt;a class="link" href="https://github.com/mgelsinger/hide-em-ff" target="_blank" rel="noopener"
&gt;Firefox source repository&lt;/a&gt; carries the same local, site-agnostic approach for Firefox 115 and newer. Until its Mozilla Add-ons listing is live, the Firefox version is a build-from-source option.&lt;/p&gt;
&lt;p&gt;Source: &lt;a class="link" href="https://github.com/mgelsinger/hide-em" target="_blank" rel="noopener"
&gt;github.com/mgelsinger/hide-em&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="faq"&gt;FAQ
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Does it work on [specific site]?&lt;/strong&gt;
Almost certainly. There&amp;rsquo;s no site-specific code - the scanner runs on everything. If you find a site where it misses something, &lt;a class="link" href="https://github.com/mgelsinger/hide-em/issues" target="_blank" rel="noopener"
&gt;open an issue&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What if it breaks something?&lt;/strong&gt;
Use &lt;strong&gt;Reveal all and pause this tab&lt;/strong&gt; from the toolbar popup. For deeper troubleshooting, open DevTools and run &lt;code&gt;__heDebug.kill()&lt;/code&gt; to disable the scanner on the current page immediately without a reload.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Is it really free?&lt;/strong&gt;
Yes. MIT-licensed, no paid tier, no business model. If that changes I&amp;rsquo;ll say so.&lt;/p&gt;</description></item></channel></rss>