Less backlog. More worth reading.

Find what matters today, follow a good article into the next one, and keep reading when the connection drops. Your desktop app and self-hosted reader share the same familiar reading experience.

Install, open, read. The feeds keep coming after you close the window.

The Mac and Windows apps include their own runtime. Start reading without setting up Docker or a database. Close the window and Dibao stays in the menu bar or tray, fetching new articles in the background.

  • Installers for Apple Silicon, Intel Mac, and Windows x64.
  • Your articles and reading profile stay on this computer.
  • Back up, choose a restore point, and check for updates in Settings.
Dibao
Running in the backgroundv0.4.1

Backup and recovery

Create backup

Restore points

  • Today · Manual backup214 MB
  • Yesterday · Before update208 MB
Open Dibao

Your sources. A better reading order.

Topics, sources, freshness, and reading feedback help bring worthwhile articles forward. Your current list keeps its order while background recommendations change, so you can keep reading without losing your place.

  • Switch between Recommended and the Latest timeline.
  • Inspect the reasons and adjust your preferences.
  • Stable loading reduces repeated or skipped articles.
RecommendedWhy
The Verge · 12 min ago

A personal feed should keep ranked inventory

Sources, freshness, reading depth, and exploration shape the ranking.

MIT Technology Review · 1 hour ago

Small embedding models for personal reading

Provider optional; baseline ranking always remains usable.

Simon Willison · 2 hours ago

RSS can be calm without becoming dumb

No ad slots and no platform-injected sources.

A recommendation should be able to explain itself.

Article-level explanations surface topic, source, freshness, state, exploration, and fallback signals. If provider, embedding, or profile data is missing, Dibao degrades gracefully instead of breaking the reader.

  • Interest clusters, negative topics, and source signals are visible.
  • Coverage, pendingJobs, failedJobs, and inventory status are diagnosable.
  • Provider failure never blocks reading or local search.

Recommendation explanation

  1. Close to a positive interest cluster
  2. Ranked inventory · 126 articles
  3. Fresh article
  4. Inside exploration radius

Current provider

Ollama · bge-m3 · 1024 dimensions

coverageRatio 0.78 · pendingJobs 0 · failedJobs 0

Clear the backlog without poisoning the profile.

Reader Commands can mark unread debt as read across Latest, Recommended, or submitted search scopes. They are audited separately from behavior events, so cleanup does not become false positive feedback.

  • Clear all, older than 24h, older than 7d, or older than 30d.
  • Favorite, Read Later, read/unread, and not-interested remain explicit actions.
  • Reader progress and article state continue to shape real recommendations.

Reader Command

Cleanup scope · Recommended Mark unread older than 7 days as read

Audited separately; not counted as positive feedback.

Personalization should have a radius you control.

A reader can become too good at showing only the familiar. Dibao lets you tune how tightly recommendations hug established interests versus how much they explore the edges of your own subscriptions. Exploration can be explained and adjusted later.

  • Lower levels are broader and more exploratory; higher levels stay closer to known interests.
  • The ranking scope never leaves feeds you subscribed to.
  • Dedupe, explicit negative feedback, negative topics, and article state still apply.

Cocoon level

Current bias: keep familiar interests while letting edge topics from your subscriptions surface.

Only the ranking radius changes; sources do not.

A good article can lead somewhere.

Find related articles below the reader. After a like, discover another story that connects the topic to your own interests. Keep exploring inside the sources you chose.

  • Preview up to five related articles.
  • Open More for related search with filters and pagination.
  • Discovery uses existing embeddings, without an LLM call for each lookup.

Dibao does not expand your sources for you. It ranks only the RSS feeds you selected and keeps every recommendation reason inspectable.

You might also like

After liking this article
MIT Technology ReviewSmall embedding models for personal reading

Related articles

More
From your subscriptions
Simon Willison · 2 hours agoRSS can be calm without becoming dumb
The Verge · 12 min agoA personal feed should keep ranked inventory

Lose the connection. Keep the page.

The desktop app reads articles already stored on your computer and records reading state offline. In a browser or PWA, prepare copies of recommendations and read-later articles before heading out.

  • Desktop reads directly from its local data.
  • PWA defaults to a target of 200 recommendations, adjustable from 50 to 1,000.
  • PWA actions sync after reconnecting. New feeds and unsaved external resources still need a connection.
Offline reading

PWA · Prepared copies

Available articles
237
Recommended
186 / 200
Read later
51
Pending actions
3

Desktop reads saved articles directly from local data.

Short feed excerpts need not end the reading.

Enable the official full-content plugin per feed. If extraction fails, the original RSS body stays available. Full-text search, reading settings, and PWA support keep reading, finding, and saving in one place.

  • No JavaScript execution or paywall bypass.
  • Keep loading Recommended, Latest, Favorites, Read Later, and search results.
  • Add the PWA to your phone's home screen.

Local search

SourceFolderUnreadRec priority
42 results · SQLite FTS5 Small embedding models for personal reading

Make room for the things worth reading.

Download for Mac or Windows. Self-host on your NAS.

Install with DockerDocker · v0.4.1

Choose your versionv0.4.1

Mac (Apple Silicon)DMG · Apple SiliconMac (Intel)DMG · IntelWindowsEXE · x64DockerDocker · Quick install guide