Versoline
Free and open source · macOS 15+

Versoline: an RSS reader and podcast player for Mac

Versoline brings your RSS and Atom feeds, podcasts, YouTube channels and Reddit communities into one Mac app. It's written in Swift and SwiftUI, uses only Apple's frameworks, and keeps your data on your Mac.

Or install with Homebrew

$brew install --cask bezelye404/versoline/versoline

MIT license · macOS 15 Sequoia or later · Apple silicon and Intel

What it does

Your feeds, articles, podcasts and videos in one window, with reading at the centre.

Feeds and sources

RSS 2.0 and Atom, YouTube channels and playlists, Reddit subreddits and users. Paste a site address and Versoline finds the feed for you. OPML import and export keep your folders.

A reader that isn't a web page

Articles are set in native SwiftUI text: headings, lists, quotes, code, tables and images with captions. Menus, share bars and ads are left out, and the original page is one click away.

Same story, once

When several of your feeds cover the same news, the list shows one row with the number of sources. Top Stories collects what three or more feeds are talking about. The grouping happens on your Mac, and you can turn it off.

Typography and themes

System, serif, sans-serif and monospaced fonts, adjustable size and line height, ten colour palettes and Bionic Reading.

Translate on your Mac

Articles in another language are translated with Apple's Translation framework, so the text stays on your Mac.

Highlights, notes and search

Find in Article, highlights and notes on paragraphs, and Versoline remembers where you stopped in long articles. Bookmarks can show up in Spotlight if you want them to.

Podcasts and video

Search the Apple Podcasts directory, stream or download episodes, and use a queue, a sleep timer and speeds from 0.75x to 2x. Videos play in an embedded player or in your browser.

Rules and muted keywords

Mark new articles as read, bookmark them automatically, or hide topics you don't want to see. Feed Health shows feeds that fail or have gone quiet.

Backup and nearby sync

Back up the whole library as one file. If you want, your own Macs can sync over the local network after you pair them with a code. There is no server in between.

Calendar

A month view that shows how many articles arrived each day and which days have bookmarks. Pick a day to see what came in, or only what you saved.

Widget

The unread count and the newest headlines on your desktop, top stories first, in three sizes. It follows the app's colors or any of the ten palettes, and it uses no network.

English and Turkish

The interface is available in both languages. Pick one in Settings, or follow the system.

Ten color palettes

Flat, matte colors, from warm paper to cool slate. Try them on this page; the app and its widget use the same ones.

Slate

Keyboard shortcuts

KeyAction
J / KNext / previous article
MToggle read
SToggle bookmark
OOpen the article in your browser
⌘RRefresh all feeds
⌘KCommand palette
⌥⌘FFind in the article
⇧⌘FFocus Mode

Privacy and data

Versoline has no accounts, no analytics and no crash reporting. Everything it stores lives in ~/Library/Application Support/Versoline. Its network requests go straight from your Mac, and each one has a reason. The only data kept outside that folder is the widget's snapshot, one small file with the unread count and a few headlines, in ~/Library/Application Support/Versoline Widget.

RequestTo whomWhen
Feed updatesThe sites whose feeds you followOn refresh
Article pagesThe site of an articleWhen you open it
Site iconsThe site itselfWhen a feed is shown
Article images, YouTube thumbnailsTheir publishersWhen shown
Podcast searchApple's iTunes Search APIWhen you search
Curated feed catalogThe project's GitHub repositoryWhen Add Feed is opened
Translation language packsApple, through macOSFirst use of a language pair

Story grouping, translation, Spotlight indexing, highlights and notes all happen on your Mac. The app has no third-party dependencies, and the source is public, so you can check any of this yourself.

Install

Two ways. Homebrew is the shorter one.

HomebrewRecommended

$brew install --cask bezelye404/versoline/versoline

One command, and updates come with brew upgrade --cask versoline. The cask clears the quarantine flag, so macOS does not warn on first launch.

Disk image

Open it and drag Versoline to Applications.

Download the .dmg

Versoline is signed ad hoc, without a paid Apple Developer certificate, so macOS may say it can't verify the developer. Right-click the app and choose Open, or run xattr -cr /Applications/Versoline.app.

If you used it under its earlier name, easyRSS, Versoline imports that data on first launch and leaves the old folder alone.

Build from source

You need macOS 15 or later, Xcode 16 or later and XcodeGen.

git clone https://github.com/bezelye404/Versoline.git
cd Versoline
xcodegen generate
xcodebuild -project Versoline.xcodeproj \
  -scheme Versoline -configuration Release build

About the name

Verso is the left-hand page of an open book, the one you turn to. Line is the stream of stories and the lines of text you read. Versoline is an independent, open-source Mac app for reading feeds. It was called easyRSS until version 0.3, and it has no connection to companies or products with a similar name.

Frequently asked questions

What is Versoline?

Versoline is a free, open-source RSS reader and podcast player for Mac, written in Swift and SwiftUI. It was previously called easyRSS.

Does Versoline need an account or an internet connection?

No account. It needs the network to fetch feeds and articles, but anything you've already loaded or downloaded stays available offline.

Where is my data, and how do I move it to another Mac?

In ~/Library/Application Support/Versoline. To move it, use File > Export Backup and Restore Backup, export your subscriptions as OPML, or turn on nearby sync between your own Macs.

How do I import my subscriptions from another reader?

Export an OPML file from that app, then choose File > Import OPML in Versoline, or just open the file with it.

Can I follow a site that has no visible RSS link?

Usually, yes. Paste the site address in Add Feed. If the site advertises a feed or uses a common feed path, Versoline will find it.

Which languages does the app support?

English and Turkish. You can pick one in Settings > General.

How do I add the widget?

Open Versoline once, then right-click the desktop, choose Edit Widgets and look for Versoline. It shows what the app last wrote, so it stays as it was while the app is closed.

Can I install it with Homebrew?

Yes: brew install --cask bezelye404/versoline/versoline. Update with brew upgrade --cask versoline.

Is it free?

Yes, and always will be. It's released under the MIT license, and the source code is on GitHub.