{"slug": "anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev", "title": "AnyFilter: Hide anything you don't want to see on any site, powered by Jev", "summary": "TypeSafe released AnyFilter, an MIT-licensed Chrome extension that uses the Jev model to hide unwanted content on any site, starting with X. Users install the extension via a Chrome zip from GitHub Releases, paste a Jev API key from Vercel AI Gateway or TypeSafe's console, and type rules such as \"horoscopes\" to filter posts, with hidden items grouped by reason in a side panel and a \"Put back in feed\" option. The extension keeps the API key in the browser and supports additional sites by implementing domain/timeline-view.ts and adding the site's URL to the content script.", "body_md": "Chrome extension that uses [Jev](https://typesafe.ai) to hide anything you don't want to see on any site, from ads and spam to whatever you describe in a sentence. X for now, more sites in the works.\n\n## anyfilter-demo-1080p.mp4\n\n1. Download `anyfilter-<version>-chrome.zip` from[Releases](https://github.com/anyfilter/anyfilter/releases) and unzip it.\n2. Open `chrome://extensions` , turn on Developer mode, click \"Load unpacked\" and pick the unzipped folder.\n3. Go to x.com and click the toolbar icon. The panel docks on the right.\n\nTo build it yourself: `pnpm install && pnpm build`, then load `.output/chrome-mv3`.\n\n1. Open Settings in the panel and paste a Jev key from [Vercel AI Gateway](https://vercel.com/ai-gateway/models/jev) or[TypeSafe](https://console.typesafe.ai) . It never leaves your browser.\n2. Tick what to hide, or type your own rule like \"horoscopes\" and press Add.\n3. Scroll. Hidden posts show up in the panel grouped by reason; click \"Put back in feed\" if Jev got one wrong.\n\n```\npnpm dev        # dev server with the extension loaded\npnpm typecheck\npnpm e2e        # offline end-to-end run against static fixtures\n```\n\n`pnpm e2e` loads the built extension into Chromium, serves fake X pages from `scripts/fixtures/` and mocks Jev. If playwright-core can't find a browser, point it at one with `ANYFILTER_CHROMIUM=/path/to/chrome`.\n\nLayout:\n\n```\nsrc/domain/          types, categories, verdicts, settings, ports\nsrc/features/        feed-filter: scan, classify, hide\nsrc/infrastructure/  Chrome storage, Jev adapters, X DOM reading and hiding\nsrc/ui/sidepanel/    React side panel\nsrc/entrypoints/     content, background, sidepanel\n```\n\nTo support another site, implement `domain/timeline-view.ts` for it and add its URL to the content script.\n\nMIT", "url": "https://wpnews.pro/news/anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev", "canonical_source": "https://github.com/anyfilter/anyfilter", "published_at": "2026-09-19 10:59:29+00:00", "updated_at": "2026-09-19 11:24:54.278928+00:00", "lang": "en", "topics": ["ai-products", "ai-tools", "generative-ai", "large-language-models"], "entities": ["AnyFilter", "Jev", "TypeSafe", "Vercel AI Gateway", "Chrome", "X", "GitHub", "Playwright"], "alternates": {"html": "https://wpnews.pro/news/anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev", "markdown": "https://wpnews.pro/news/anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev.md", "text": "https://wpnews.pro/news/anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev.txt", "jsonld": "https://wpnews.pro/news/anyfilter-hide-anything-you-don-t-want-to-see-on-any-site-powered-by-jev.jsonld"}}