Keryx
works.merc.keryx
Zapstore Catalog One reader. Every device. Local-first RSS reader with optional cloud sync.
One reader. Every device. Keryx is a local-first, cross-platform RSS reader. By default, all of your data lives on your device; turn on cloud sync only if you want the same subscriptions, read/starred status, and articles to follow you between your phone and your desktop. FEATURES • Multi-device sync via your own cloud storage (Dropbox or OneDrive) — no account with Keryx itself, ever. (Google Drive sync, available in the Google Play and GitHub builds, is not part of the F-Droid build because it needs Google Play services.) • Local-first: works fully offline, with no sync required • Fast local full-text search across article titles and content • Organize feeds with tags (cross-cutting labels) and folders (hierarchical grouping) • RSS 2.0 and Atom 1.0 support (RSS 1.0/RDF is also loosely parsed) • OPML import and export, for moving to or from other RSS readers and for backing up your subscriptions • Completely free — no freemium tiers, no trial period, no ads • Open source — the full source code is public and can be inspected or modified by anyone PRIVACY Keryx has no user accounts and no server operated by its developer. There is nothing to sign up for, and nothing that its developer's own infrastructure ever receives. The app includes no analytics, telemetry, crash reporting, advertising, or tracking of any kind. The F-Droid build contains no Google Play services and never checks for updates itself — F-Droid does that. Keryx talks only to servers directly relevant to what you're doing: the feeds you subscribe to (and their favicons) and — only if you connect one — Dropbox or OneDrive for sync. Nothing else. Learn more, including the full privacy policy, at https://keryx.merc.works
First release: Nov 5, 2026, 1 total release.
Most recent release: Nov 5, 2026.
Appears in 0 app stacks.
0 sats / 0 zaps received in the past year.
Sats Received
Underlying data available via MCP: app_zaps, app_releases.
Zap Count
Underlying data available via MCP: app_zaps, app_releases.
Releases
- Nov 5, 2026 0.27.0## What's Changed in v0.27.0 ### New Features - The article list now has three exclusive modes — All, Unread and Starred — chosen from a pop-up button in the list toolbar or the View menu (⌘/Ctrl+1–3). Starred narrows the current feed, folder, tag or search to its starred articles for the session. [#305](https://github.com/shimataro/keryx/pull/305) - Every feed being refreshed shows a small spinner in place of its icon in the feed list (collapsed folders too), on every platform, until its new articles have landed. [#301](https://github.com/shimataro/keryx/pull/301) - On Android and iOS, automatic cloud sync now waits for Wi-Fi by default and is held back under Data Saver / Low Data Mode; a new "Sync automatically over mobile data" setting allows metered networks, and the Cloud Sync tab shows when a sync is waiting. [#290](https://github.com/shimataro/keryx/pull/290) - iOS shows a refresh you started (pull, Refresh All, a feed's Refresh) in the bottom bar — "Checking for new articles…", then the result. A refresh that reaches none of its feeds leaves one notification-center entry explaining what to check. [#287](https://github.com/shimataro/keryx/pull/287) - A pull or Refresh All made while an automatic refresh is running now joins it and reports its result. [#301](https://github.com/shimataro/keryx/pull/301) - The reader keeps its scroll position after the app is terminated in the background (Android and iOS) and after the web content process restarts; iOS also returns to the column you were on. [#308](https://github.com/shimataro/keryx/pull/308)
More…
- iPhone Duo support: the setup screen fits the outer display, and the article list toolbar prioritizes its most important items in vertical bars. [#294](https://github.com/shimataro/keryx/pull/294) - The macOS app is now also available on the Mac App Store (updated by the App Store, without the built-in updater). [#317](https://github.com/shimataro/keryx/pull/317), [#318](https://github.com/shimataro/keryx/pull/318) ### Improvements - Read / unread / star changes now sync in batches (after a few minutes of quiet, or when the app leaves the foreground) instead of uploading the whole database per article; refreshes no longer trigger extra syncs, and unchanged read/star writes are skipped. [#289](https://github.com/shimataro/keryx/pull/289) - New-article notifications from automatic refreshes are held back while the app is in front, where the unread counts and the new-articles pill already show them. [#301](https://github.com/shimataro/keryx/pull/301) - "Hide Read Articles" moved from the article list toolbar to the View menu, freeing toolbar room (on a narrow iPhone, Mark All as Read no longer drops into the overflow menu). [#307](https://github.com/shimataro/keryx/pull/307) - Faster refresh and reading: each feed is applied as soon as its own fetch completes, the reader shows the article header while the body loads, favicons are no longer re-probed every refresh, and needless recompositions were removed. [#295](https://github.com/shimataro/keryx/pull/295), [#300](https://github.com/shimataro/keryx/pull/300), [#310](https://github.com/shimataro/keryx/pull/310), [#312](https://github.com/shimataro/keryx/pull/312) - Lower memory use during refresh, and repeated "feed gone" (410) warnings collapse into one entry per feed. [#309](https://github.com/shimataro/keryx/pull/309) - Favicon corners now scale with their size, consistently across the feed list, article list and reader. [#304](https://github.com/shimataro/keryx/pull/304) ### Bug Fixes - Fixed an iOS crash when returning from the reader to the article list while the list changed (e.g. during a refresh or sync). [#303](https://github.com/shimataro/keryx/pull/303) - Android no longer crashes when the reader's WebView renderer dies; the reader is rebuilt at the same position. [#308](https://github.com/shimataro/keryx/pull/308) - "Mark all as read" now works under the Starred list. [#305](https://github.com/shimataro/keryx/pull/305) - Search results keep their scroll position, and no "no articles" message flashes while the list is still loading. [#295](https://github.com/shimataro/keryx/pull/295) - The setup screen scrolls on small iPhone displays instead of clipping the cloud providers. [#292](https://github.com/shimataro/keryx/pull/292) - iOS: the sidebar sync button shows a spinner while syncing, and the reader's scroll indicator is visible in dark mode. [#286](https://github.com/shimataro/keryx/pull/286), [#285](https://github.com/shimataro/keryx/pull/285) - The desktop OAuth loopback redirect server now binds to 127.0.0.1, and macOS keychain decode failures never log tokens. [#315](https://github.com/shimataro/keryx/pull/315) - Resolved Apple build warnings. [#299](https://github.com/shimataro/keryx/pull/299) ### Build & CI - Added a Mac App Store target without Sparkle, a CI check that its archive carries no self-updater, and a workflow that publishes it to App Store Connect. [#317](https://github.com/shimataro/keryx/pull/317), [#318](https://github.com/shimataro/keryx/pull/318), [#320](https://github.com/shimataro/keryx/pull/320) - The App Store workflow builds the release tag by default and supports automatic or manual release. [#288](https://github.com/shimataro/keryx/pull/288) ### Documentation - README and docs describe the iOS/iPadOS app as released on the App Store, with App Store and Mac App Store screenshots and an updated download section. [#291](https://github.com/shimataro/keryx/pull/291), [#316](https://github.com/shimataro/keryx/pull/316), [#321](https://github.com/shimataro/keryx/pull/321) - Shortened the external spec, moving implementation details into the focused design docs. [#306](https://github.com/shimataro/keryx/pull/306) ### Other Changes - Code-quality sweeps and test hardening (deterministic waits instead of sleeps, broader coverage). [#293](https://github.com/shimataro/keryx/pull/293), [#298](https://github.com/shimataro/keryx/pull/298), [#311](https://github.com/shimataro/keryx/pull/311), [#315](https://github.com/shimataro/keryx/pull/315) - Development-tooling updates. [#302](https://github.com/shimataro/keryx/pull/302), [#313](https://github.com/shimataro/keryx/pull/313), [#314](https://github.com/shimataro/keryx/pull/314) **Full Changelog**: https://github.com/shimataro/keryx/compare/v0.26.0...v0.27.0