Muuted is a news reader with no algorithm, by construction — no engagement scoring, no “for you,” no algorithmic refill. Just the sources you chose, in order, filtered by rules you wrote, in a feed that actually ends.
Stories are ordered by recency and how many of your own sources ran them — nothing is boosted, buried, or A/B-tested for your attention. There is no model deciding what you “engage” with. When you’ve seen today’s stories, the feed says so and stops. That’s the whole ranking, and it doesn’t change based on how long you stare at it.
Recency first; a “most covered today” signal from your sources, not a global trending machine.
No algorithmic refill. “That’s today. Nothing else is waiting.” is a real state, not a growth-hack fear-of-missing-out loop.
Every source gets its fair share of the page — a busy wire can’t drown out a blog you actually read.
Cards, headlines, by category, by source, or by time. Same data, your layout — nothing hidden behind a ranking.
Muuted runs on RSS/Atom, plus first-class support for YouTube channels and Bluesky & Mastodon accounts. Add anything by URL, import your OPML or your whole YouTube subscription list, and search a directory of 54,000+ vetted feeds we built and host ourselves — a local full-text index, so source search doesn’t depend on any third party’s endpoint.
Bring your reader with you, take it with you when you leave. Your sources are yours.
YouTube, Bluesky, and Mastodon are sources alongside news feeds — paste a channel or a @handle.
Paste an X, Instagram, or TikTok link and Muuted points you at the open equivalent on Bluesky, Mastodon, or YouTube.
Source discovery is our own directory + FTS5 resolver — not a rented search API that can rate-limit or vanish.
The mute engine is instant and deterministic: exact word, phrase, whole-word, symbol, or whole-source — block it and it’s gone, no model in the path. Mute for a day, week, month, or forever and let a news cycle lift itself. Pin always-show words that override every mute. An optional AI “Smart Mute” adds sense-awareness on top — but the plain mutes never need it.
Your source list and mute words are encrypted at rest (Fernet field encryption) — not sitting in plaintext in a table. There are no third-party trackers on your reading; analytics are self-hosted. Source favicons and story images are proxied through Muuted, so your list of sources never leaks to a favicon CDN and your browser never hits a publisher’s image CDN while you read. Location for weather/local is device-only — we never infer it from your IP, so a VPN never sends you the wrong city.
Feed names + URLs and muted words are Fernet-encrypted in the database.
No ad/analytics SDKs following your reading. Self-hosted metrics only.
Icons and feed images are fetched, resized, and served through Muuted’s own image proxy — your browser never talks to a favicon service or a publisher CDN.
Weather & local news use the device’s own geolocation, never IP geolocation.
Summaries, Calm mode, and Smart Mute run on a self-hosted model: llama3.1:8b on the founder’s own GPU, reached over a private WireGuard tunnel. It is, quite literally, running in a house on hardware we own — not at an AI company. What gets sent is only the headline text and your one-sentence mute preference — never your identity, never your feed, never your reading history. (A hosted fallback — GitHub Models — exists purely as a backup path if that box is down.) And it fails safe: if the model is unavailable or unsure, muting keeps the story rather than silently hiding it. The plain, non-AI mutes work with the AI switched off entirely.
Sources & the 54k directory, all keyword / source / timed muting, every view, the reader, weather & local, OPML import/export.
The optional AI layer — Smart Mute, on-demand summaries, Calm mode, and Ask-the-web.
Open the live demo, or build your own feed free. If you already run RSS, import your OPML and you’re home.