This is a text-only version of the following page on https://raymii.org: --- Title : Tiny Tiny RSS vs Miniflux Author : Remy van Elst Date : 26-09-2020 URL : https://raymii.org/s/articles/Tiny_Tiny_RSS_vs_Miniflux.html Format : Markdown/HTML --- I'm an heavy user of RSS feeds, having over 1500 feeds I follow. Without a decent feed reader that setup wouldn't work. For [over eight years][1] now I've been an happy user of Tiny Tiny RSS, a web based feed reader. But, recently I found out about [miniflux][0], also a web based RSS reader. In this article I'll compare the two for my use cases, mostly mobile usage. TD;DR, I've switched to Miniflux, due to it being more suited for my usecase (mobile usage), less ajax heavy, better readability integration, easier to subscribe to feeds and a more pleasant reading layout. In this post I'll go over my usage of a feed reader, the differences between miniflux and tiny tiny rss and the differences in server hosting, miniflux has different server requirements which most shared hosts don't offer.

Recently I removed all Google Ads from this site due to their invasive tracking, as well as Google Analytics. Please, if you found this content useful, consider a small donation using any of the options below:

I'm developing an open source monitoring app called Leaf Node Monitoring, for windows, linux & android. Go check it out!

Consider sponsoring me on Github. It means the world to me if you show your appreciation and you'll help pay the server costs.

You can also sponsor me by getting a Digital Ocean VPS. With this referral link you'll get $100 credit for 60 days.

### It all started on Lobste.rs Serial poster Calvin posted [a link][3] to a security researchers blog on exploits in tiny tiny rss. In [the comments][2] user [rumpelsepp][4] mentioned [miniflux][0] as an alternative, I decided to check it out. The screenshots looks nice, the documentation is easy to follow and comprehensive, so I gave it a spin on one of my [VPSes][99]. #### My RSS usage You might ask yourself, why does anybody need over 1500 feeds to follow. For me, most of the feeds are of small sites, just like this one, which don't update often but when they do, they have interesting content. Next to a few larger tech sites 90% of the feeds I subscribe to mostly update once or twice a month. Excluding the big tech sites, I have about 40 to 60 new articles a day. All of the reading is done on a mobile phone, both Android and iOS. My feed reader saves [the entire text][5] of an article, so I don't have to leave the comfort of my reader. The advanage to this is that I can leave an article unread for months, and it's still waiting for me there when I want to read it. For long form content, that is a very nice feature of a feed reader. Some articles I skim over quickly, some I just skip and mark as read, some I read, decide I want to read them later, mark as unread and continue on. No need for an external service like Pocket or Wallabag. Feature wise my must-have list is quite small: - Easy (quickly) subscribe to new sites (not finding a feed link, just paste the URL and figure it out, a feed reader can `CTRL+F` for `xml` in the sourcecode faster than I can) - Mobile first, I read and subscribe only in "spare" moments, via my phone. My desktop is for `serious business` - Readability integration, save the full plain text content of an article, for all feeds. I hate cookiewalls and "design" just as much as the next guy. Now that we've established my workflow and requirements, lets find out why Tiny Tiny RSS fails to meet those. ### Issues with Tiny Tiny RSS First and foremost, I don't think Tiny Tiny RSS is a bad piece of software. I have used it for almost a decade and it has served me well. My usage patterns change, and it doesn't cope well with that, but that doesn't make it bad software. I've donated multiple times and bought the mobile apps to support Andrew, so I consider myself a serious user. The biggest points on Tiny Tiny RSS that annoy me are that it is hard to subscribe to new feeds on iOS and that the readability integration is a plugin that can only be enabled on a per feed basis, not for all feeds at once. Tiny Tiny RSS uses a lot of AJAX, overlay windows and such. On the desktop that is not an issue, but on mobile it makes the web version unusable, requiring an app. Here's a picture of the mobile website: ![ttrss mobile site][6] Scrolling is 'wonky', no other way to describe it. Just like in Microsoft Word when you want to insert a picture, all other elements move in unpredictable ways, that's what happens with scrolling here as well. Sometimes a new tab opens, sometimes an article disappears, sometimes the sidebar opens. To subscribe to a feed I have to fiddle with the topmost bar, scroll to the left, open the menu, click subscribe and then a dialog opens, which I have to tap very precisely, otherwise it closes. Here are two pictures to describe the flow: ![ttrss mobile site menu and subscribe][7] Feed management on mobile is a hassle as well. Feeds with errors is again a small dialog, its gone if you tap wrong. Feed management, editing or checking some info is again a smaller dialog: ![ttrss mobile feed error edit][10] I need to edit each and every feed I add to enable the readability plugin, so you can imagine my annoyance every time. The mobile app on iOS does not allow you to subscribe to a feed and on Android it does, but it took at least 30 seconds of waiting and loading. For reading, the mobile apps are quite okay. I do dislike some button placements on iOS and the floating action button on Android, but thats about all. Quite okay they are. One big advantage of Tiny Tiny RSS is that it runs on PHP/MySQL, so every shared host can run Tiny Tiny RSS. Once a month update it to the latest git master, that is all the setup and maintenance you'll ever have. Often, shared hosts have it in their control panel available (Installatron/Softalicious), so installing it is just one click, with auto updates. Another advantage is that it is very easy to share or re-publish articles. You can have a public RSS feed of all your feeds, or certain categories, or reshare one article. I don't use that very often, or just share a link to the article. Categories, I first neatly sorted all my feeds, but that was too much of a hassle and now everything is in "uncategorized". The Android app, when subscribing to a feed, always took very long to get the categories. Not sure why it didn't cache that. Concluding, Tiny Tiny RSS is a great piece of software, it just has issues on mobile. Setup and maintenance is low, it runs everywhere and it works great on desktops or tablets. For my use case, mobile only, it feels a little outdated. How does miniflux compare to all of the above? ### Miniflux fits better on mobile Miniflux is "just a website", modern, self hosted and equally usable on mobile as on the desktop. Not that many options as Tiny Tiny RSS, but for me more than enough. Sort feeds by new? Check. Readability integration without a fiddly dialog? Check. Subscribing to new feeds easy on mobile? Check. As a bonus it even has a dark theme. The reading view has a list of titles, which you can click open to view the full content. Compare it with Tiny Tiny RSS above, here are two pictures: ![miniflux article list][13] Here is a picture of the subscribe page: ![miniflux subscribe][9] Miniflux does not seem to be that ajax heavy, the layout fits better on mobile, with plain links instead of floating menu's and dialogs, everything scales to fit and overall the layout is very pleasant. Adding a feed is a regular menu option, way easier and way less fiddly, no worries on dialogs closing, Feed errors are also a plain page, as is the feed edit page: ![miniflux feed errors][12] Migrating to Miniflux was easy, have Tiny Tiny RSS export an OPML file and import that in Miniflux. On the desktop, the webpages work exactly the same but are just a bit wider: ![miniflux in firefox][15] There are [keyboard shortcuts][18] available, but I don't use them since I'm on mobile. There is also [integration with external services][19] like Pocket or Wallabag, which I also do not use. Resource usage wise it is not noticable on the server at all. I use Munin to generate nice usage graphs, [cpu time per process][20], [overall CPU usage][21], [memory usage][22] and [disk IO][23] all have not really increased with miniflux on the server. #### Hosting The hosting part is however, not as easy as Tiny Tiny RSS, mainly due to it being written in Go, thus requiring an actual [VPS][99] and some server knowledge. The [documentation however is excellent][16], they make [debian packages and a repo][17] available and include a guide for `nginx` (webserver) and `postgresql` (database) with Lets Encrypt SSL certificates. Compared to Tiny Tiny RSS (PHP/MySQL), you cannot host Miniflux on every shared host out there. But, a [VPS][99] these days is in the 5 dollar/euro a month price range, it can run more if you like (an IRC bouncer for example), not that big of a hassle. If you click any of [the links][99] on this page, you'll be redirected to [Digital Ocean][99], they are affiliate links. You get $100 credit for 60 days, two months of a beefy server to try miniflux on. Digital Ocean has excllent guides. For me, hosting on a [VPS][99] is not an issue, since I'm an experienced sysadmin. I do like quality documentation and debian packages, a big plus there. [Miniflux][0] also makes ARM binaries available which you can use to self-host on a Raspberry Pi or, in my case, a [Freedombox](https://freedombox.org/). The SQL query to set all feeds to save the original content: UPDATE feeds SET crawler = 't' WHERE user_id = 1; I found this on their github issue tracker, after importing 1500 feeds from an OPML file, this was wonderful. Never found out how to do this in Tiny Tiny RSS. ### Conclusion For my use case, mobile reading and management, Tiny Tiny RSS didn't fit the bill anymore. I have used it with pleasure for over 8 years and would still have used if it was more mobile friendly. Thanks to Lobsters and RumpelSepp I found out about [Miniflux][0], a more modern and more mobile friendly feed reader. Installation is easy, documentation is excellent and all of my annoyances with Tiny Tiny RSS are not in Miniflux. Performance is great, resource usage is low and it has all the features I want. [0]: https://miniflux.app/ [1]: /s/articles/Tiny-Tiny-RSS.html [2]: http://web.archive.org/web/20200926110641/https://lobste.rs/s/rkahvm/exploiting_tiny_tiny_rss [3]: http://web.archive.org/web/20200924022627/https://www.digeex.de/blog/tinytinyrss/ [4]: https://rumpelsepp.org [5]: /s/articles/Tiny-Tiny-RSS-Readability-plaintext.html [6]: /s/inc/img/ttrss1.png [7]: /s/inc/img/ttrss1-2.png [9]: /s/inc/img/miniflux1.png [10]: /s/inc/img/ttrss4-5.png [12]: /s/inc/img/miniflux2.png [13]: /s/inc/img/miniflux3-4.png [15]: /s/inc/img/miniflux5.png [16]: https://miniflux.app/docs/ [17]: https://miniflux.app/docs/installation.html [18]: https://miniflux.app/docs/keyboard_shortcuts.html [19]: https://miniflux.app/docs/services.html [20]: /s/inc/img/munin1.png [21]: /s/inc/img/munin2.png [22]: /s/inc/img/munin3.png [23]: /s/inc/img/munin4.png --- License: All the text on this website is free as in freedom unless stated otherwise. This means you can use it in any way you want, you can copy it, change it the way you like and republish it, as long as you release the (modified) content under the same license to give others the same freedoms you've got and place my name and a link to this site with the article as source. This site uses Google Analytics for statistics and Google Adwords for advertisements. You are tracked and Google knows everything about you. Use an adblocker like ublock-origin if you don't want it. All the code on this website is licensed under the GNU GPL v3 license unless already licensed under a license which does not allows this form of licensing or if another license is stated on that page / in that software: This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Just to be clear, the information on this website is for meant for educational purposes and you use it at your own risk. I do not take responsibility if you screw something up. Use common sense, do not 'rm -rf /' as root for example. If you have any questions then do not hesitate to contact me. See https://raymii.org/s/static/About.html for details.