SMF·NEWSBLUR-PREMIUM
Can a prompt replace NewsBlur?
Read it later & RSS — read-later, bookmarks and RSS
Exhibit tracking slip
Verdict
NewsBlur's distinguishing feature is training: thumbs up an author, a tag or a phrase and the reader starts sorting your firehose by predicted interest. That is a naive Bayes classifier over feed metadata, which is a genuinely small amount of code, and the rest is fetching and rendering RSS. It is one of the cleaner yes entries in the catalogue. What you give up is that NewsBlur is also open source and self-hostable already, so the honest question is whether you want to write one or run theirs.
Exhibit A — The prompt
Received on31.07.2026Build a self-hosted feed reader whose distinguishing feature is a per-feed relevance classifier.
Fetching: import an OPML file. Poll each feed on an interval derived from its own publishing rate, using conditional requests (ETag and If-Modified-Since) so a quiet feed costs one 304 response. Parse RSS, Atom and JSON Feed. Deduplicate stories by GUID first, then by canonical URL, then by title-plus-date, because feeds lie about all three. Store the full entry: title, author, tags, published date, and the content or summary the feed provides.
Training, which is the point of this build. Every story can be given a thumbs up or thumbs down, and the user chooses what the vote applies to: the author, one of the story's tags, or a phrase they select from the title. Store these as weighted training rules per feed. Score each new story by summing the weights of every rule it matches, and route it into one of three buckets: focus (positive score), unread (neutral), hidden (negative). Show the matched rules on each story so a surprising placement can be traced and corrected in one click.
Reading: three-pane layout with feed list, story list and story pane. Keyboard-first navigation (j, k, space, s to save, u to toggle read). Full-text search across everything ever fetched, using PostgreSQL full-text search.
Retention: keep every fetched story forever by default, since the archive is the reason to run your own. Export OPML and a complete JSON dump.
Out of scope: native mobile apps, any social or sharing layer, and rendering the publisher's original page inside the reader. Also note in the README that NewsBlur's own server is open source under the MIT licence, and that self-hosting it is a legitimate alternative to writing this from scratch.
Opening prefills the prompt — press enter to run it.
Exhibit B — What you lose
- B.1 the iOS and Android apps and their offline cache
- B.2 the shared "blurblog" layer where you follow other readers
- B.3 original-page view, which renders the publisher's site inside the reader
- B.4 someone else keeping the fetchers running when a feed changes shape
Prior art
Exhibit C — Why people still pay: capture polish, sync, and content partnerships
Because a reader that stops fetching is worse than no reader, and three dollars a month for someone else to chase broken feeds, dead redirects and rate limits is a fair trade for most people.
Questions
Can I bring my NewsBlur subscriptions and training across?
Subscriptions, yes: NewsBlur exports OPML and the importer reads it directly. Training does not transfer, because it is stored as NewsBlur's own classifier state. You start with an untrained reader and it takes a few weeks of thumbs to become useful again.
How well does the classifier actually work?
Well on structured feeds where authors and tags are consistent, and poorly on feeds that publish everything under one author with no tags. Title-phrase rules cover the gap but need more manual tuning. Expect it to be genuinely useful on maybe half your feeds.
What does it cost to run?
A small VPS with PostgreSQL, so five to ten dollars a month, against three dollars for NewsBlur Premium. This build is only cheaper if the machine is already running something else, which is usually the honest case for self-hosting anything.
What is the one thing that does not survive the rebuild?
Reading on a phone. NewsBlur's apps sync read state, cache articles for the underground, and handle the gesture-heavy reading most people actually do. A self-hosted web app in mobile Safari is a downgrade you will feel every day.
Related tools
Receipt