bin+lib openring

A webring for static site generators written in Rust

7 releases

0.1.6 Dec 11, 2022
0.1.5 Nov 26, 2022
0.1.0 Sep 17, 2022

#1202 in Command line utilities

21 downloads per month


303 lines


A tool for generating a webring from RSS feeds.

This is a rust-port of Drew DeVault's openring, with the primary differences being:

  • the template is provided as a argument, not read from stdin
  • we show a little progress bar
  • we fetch all feeds concurrently
  • we allow filtering feeds with --before.

openring-rs is a tool for generating a webring from RSS feeds, so you can populate a template with articles from those feeds and embed them in your own blog. An example template is provided in in.html.


cargo install openring


A webring for static site generators written in Rust

Usage: openring [OPTIONS] --template-file <FILE>

  -n, --num-articles <NUM_ARTICLES>  Total number of articles to fetch [default: 3]
  -p, --per-source <PER_SOURCE>      Number of most recent articles to get from each feed [default: 1]
  -S, --url-file <FILE>              File with URLs of RSS feeds to read (one URL per line)
  -t, --template-file <FILE>         Tera template file
  -s, --urls <URLS>                  A specific URL to consider (can be repeated)
  -b, --before <BEFORE>              Only include articles before this date (in YYYY-MM-DD format)
  -v, --verbose...                   More output per occurrence
  -q, --quiet...                     Less output per occurrence
  -h, --help                         Print help information (use `--help` for more detail)
  -V, --version                      Print version information

Using Tera Templates

The templates supported by openring-rs are written using Tera. Please refer to the Tera documentation for details.

Why a Rust Port?

Just for fun. You probably want to use Drew's stuff, it's likely better. But, this works for me.


~591K SLoC