Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation


A river-of-news style feed aggregator, using river.js.

$ go get
$ riviera --boltdb ./mydb feeds.xml

Riviera expects a list of feeds to subscribe to be passed. This is given in OPML subscription list format. An example,

<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.1">
    <outline type="rss" xmlUrl=""></outline>
    <outline type="rss" xmlUrl=""></outline>
    <outline type="rss" xmlUrl=""></outline>

By default an in-memory database is used, it is more useful to use the --boltdb option to create/open a database on disk.

The riverjs document is served at /river and a log of recent fetcher activity is served at /river/log.

See riviera --help for a full list of options.


The output from riviera should be compatible with any application that can read riverjs format feeds. I currently use rivelin to read my feeds, but I have in the past used necolas/newsriver-ui.

In either case you will need to follow the instructions given and put the correct url to the generated file, remembering that it will be not

Subscribing / Unsubscribing

Riviera watches the file containing your subscription list for changes and will attempt to update the feeds it is subscribed to based on changes to it.

That said it isn't the best experience to have to modify a file on a server to subscribe to a feed. Using riviera-admin provides a simple admin interface, including a bookmarklet to subscribe to a site's feed.