Skip to content
/ fiets Public

Opinionated feed reader (and filter)

License

Notifications You must be signed in to change notification settings

ondy/fiets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fiets

Fiets is basically just another feeds aggregator tool. It's quite opinionated in terms of its feature set and in terms of implementation style. And even in its name - it doesn't have anything to do with bicycles by the way... ;-)

If you are interested in details, read on. If you just want to dive in, download the current binary and head over to Quickstart.

Features

  • Fetch any number of feeds on a regular base and store posts in a unified stream.
  • Supports RSS and Atom format.
  • Fetch your personal Twitter feed.
  • Bookmark posts for later reading.
  • Fever API emulation. (As far as needed to make it work with the Reeder app.)
  • Extend fiets with custom Java classes:
    • Fetch anything you want (well, where posts can be extracted) from the Internet.
    • Implement filters to drop unwanted posts.
    • Implement views to highlight certain posts.

Quickstart

(As fiets is Java based, you need a working JRE on your path. Any 8+ version should do it.)

If you have an OPML file to import, you should do that first (if not, just skip this step):

java -cp fiets-0.10.jar fiets.opml.ImportOpml <filename.opml>

Next, start fiets:

java -jar fiets-0.10.jar

By default it starts to listen at port 7000. You can choose an alternative port as optional command line parameter.

Fiets provides no means to secure the connection. When deploying it on a public site make sure to run it behind a reverse proxy with authentication and HTTPS!

Database files are created in the current directory, log files below logs.

Fiets immediately starts checking known feeds for updates.

Add feeds

The add-feed bookmarklet on the Feeds page is currently broken and unfortunately there is no form to add feeds, yet.

You can add feeds manually by calling the URL:

http://<host>:<port>/add-feed?url=<feed-url>
  • <feed-url> has to point to a supported feed format.
  • <feed-url> must be URL encoded. If you call add-feed from a browser, it should be just fine.

Add Twitter Timeline

Fiets is able to embed your Twitter timeline as a feed. For this, you need to register your fiets instance as an app in your Twitter account (you probably need to apply for a developer account first).

Then you need the OAuth token+secret as well as consumer key+secret from your registered app and create the artificial URL:

twitter://?consumerKey=<consumer-key>&comsumerSecret=<consumer-secret>&token=<token>&tokenSecret=<token-secret>

Register this URL as feed and you are done.

Note: Do not give away this URL as it provides full access to your Twitter account.

From Source

If you prefer to build from the current source:

git clone https://github.com/ondy/fiets.git
cd fiets
gradle build
java -jar build/libs/fiets-0.10.jar 

There are also some really barebone bash start and stop scripts for your convenience.

Why?

I wrote Fiets since my favorite aggregator is being discontinued. Of course I could have adopted that tool, but I don't really like implementing in PHP.

Apart of that I have tried several feed aggregators over the years and have always been missing certain features so I took the chance now to implement my own one. And maybe it's also useful for you, so here you are.

About

Opinionated feed reader (and filter)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published