v0.4.1 — MIT Licensed

rssnix

A fast, minimal RSS feed reader for the terminal. Read your feeds in vim, ranger, or any editor you love.

$ go install github.com/h2337/rssnix@latest Copied!
rssnix demo showing feed management in the terminal

Features

Everything you need, nothing you don't

rssnix stores articles as plain text files on your filesystem. No databases, no cloud sync, no electron apps. Just your feeds and your favorite editor.

Parallel Fetching

Feeds are updated concurrently using goroutines. Hundreds of feeds update in seconds, not minutes.

📄

Plain Text Storage

Articles are saved as files on disk. Browse, search, and script them with standard Unix tools.

📦

OPML Import

Migrate from any RSS reader. Import feeds from local OPML files or remote URLs with a single command.

New Articles Tracking

Newly downloaded articles are symlinked into a "new" folder, so you always know what's fresh.

🛠

Use Your Editor

Read feeds in vim, ranger, or any tool you configure. rssnix fits into your existing workflow.

🌐

Cross-Platform

Runs on Linux, macOS, and Windows. Built with Go for easy installation on any system.

Commands

Simple by design

Six commands. That's all. Each does one thing and does it well.

update [feed…] alias: u

Fetch new articles for given feeds, or all feeds if none specified. Only downloads articles you haven't seen before.

open [feed] alias: o

Open a feed's directory in your configured viewer. Opens the root feed directory if no feed is given.

add [name] [url] alias: a

Add a new RSS feed to your configuration with the given name and URL.

import [path|url] alias: i

Import feeds from an OPML file—either a local path or a remote URL.

config alias: c

Open your configuration file in $EDITOR for quick manual editing.

refetch [feed…] alias: r

Delete and re-download all articles for the given feeds, or every feed if none specified.

Configuration

One file, zero complexity

Configure rssnix with a simple INI file at ~/.config/rssnix/config.ini

# Choose your viewer and feed directory
[settings]
viewer = vim
feed_directory = ~/rssnix

# Add feeds as name = url pairs
[feeds]
CNN-Tech = http://rss.cnn.com/rss/edition_technology.rss
HackerNews = https://news.ycombinator.com/rss
LWN = https://lwn.net/headlines/rss

Installation

Up and running in seconds

Requires Go 1.19 or later. Pick your preferred method.

📥 Go Install

$ go install github.com/h2337/rssnix@latest

🔌 Build from Source

$ git clone https://github.com/h2337/rssnix --depth=1
$ cd rssnix
$ go install

📦 GitHub Releases

Pre-built binaries for Linux, macOS,
and Windows are available on the
GitHub Releases page.

Quick Start

Three commands to your first feed

# Add a feed
$ rssnix add HackerNews https://news.ycombinator.com/rss

# Fetch articles
$ rssnix update

# Read in your editor
$ rssnix open HackerNews