Default settings for watches in Changedetection

I'm addicted to Changedetection for spying on website changes and internet search results for specific keywords, Occasionally also for monitoring price changes. It's quite handy to discover new links added to web directories, or stay updated with some websites that do not provide any RSS feed.

Context

  • I'm watching hundred of URLs.
  • I often spy on webrings and blogrolls to discover new interesting links, and also on search engines results for specific keywords.
  • I'm self-hosting Changedetection through Cloudron.
  • I'm mostly following through those watches via my RSS Reader, Miniflux.
  • For some specific changes, like weather bad conditions, I subscribe via ntfy.

Anyway, I've developed a few habits that fit my workflow so well for every new watch, which are:

Settings > General

This is where we set defaults for all future watches, it's pretty obvious you must start here. Here is my current setting:

  • Time between check: By forcing a convenient interval between checks, you try to find a balance between information overload and staying current. Pick your poison, but don't hesitate to override this setting at per-watch level.
  • Extract from document and use as watch title: it's convenient to let Changedetection take care of naming your watches based on the webpage titles rather than leaving the sometimes very long and non human-friendly URL as a default description.
  • Random jitter: this is handy to avoid stressing your I/O too much.

General > Group tag

This one is mostly for better organizing stuff, as I mentioned I follow those changes through RSS, I noticed it was harder to distinct between important and less important stuff because I was following the default RSS feed, but Changedetection provides distinct RSS feeds per groups/tabs of watches, and that's my preferred workflow now.

I'm trying to always set a label, I have around 15 in total, some for specific interests (privacy, discovery aka list of links, devops, music, ...) or specific people, locations and business updates. The rest is generally less important and is labelled with things like FOMO, misc, ...

Example of group tag.

Those group tags appear as labels next to the URLs you are watching.

Example of labelled URLs.

If you want to watch a whole group through RSS, link is at the bottom right of the page on the group tab.

Filters & Triggers > Remove elements

It's common on bloated rich web pages to want to focus on specific parts, like everything between <header> and <footer> sections, so I sometimes have to add footer and header. It's mostly needed for sites like eBay, 2ememain, where we can buy and sell things.

Remove HTML elements.

Filters & Triggers > default filter and triggers

my Text filtering defaults in Changedetection.

This is purely for spam reduction as I mostly want to know when something new is made.

Sometimes I also enable Sort text alphabetically depending how the page is updated by its author.

πŸ†• Those new settings have been added recently and I'm also enabling them on new watches:

Extension

Try the web browser extension for Chromium based browsers, it makes watches one-click away.

Next

I've opened a discussion in Changedetection's repository to talk about how repetitive it feels to me, in the hope we can see something like template settings be proposed in the future, at least for the filters & triggers which I consider is not too hard to start with.

Minifux scraper rules

I'm following Joy of Tech comic via RSS in Miniflux but the image was never loading.

I found half a solution on this blog post of Jan-Lukas Else, unfortunately the proposed solution fails probably as a consequence of some changes in the format of Joy of Tech pages.

The fix is quite simple actually. Edit the feed settings, set the scraper rules to the following:

p.Maintext > img[src$=".png"]

And of course enable "Fetch original content" in the feed options.

And voilΓ , simple and beautiful.

Reading RSS in peace with a few Miniflux Hacks

I'm avid of content curation using RSS feeds. Let me share some of my tips here and some code. This is a living document so please come back for new tips πŸ™‚ and explore my other articles on this topic.

Some of those tips rely on Userscripts which are snippets of code executed automatically on web pages, and usually it's very handy to customize your navigation. I'm using the Custom JavaScript block in Miniflux Settings. But some scripts won't work because of reliance on external resources, and in that case I'm using Tampermonkey for special cases that require loading external resources (think CSP & co).

Filter categories (remove empty ones) using Custom JavaScript block

There is by default no distinction between categories with or without content, and it can be annoying. I made a user script to remove categories with no content to read.

Source

https://gitea.zoemp.be/sansguidon/snippets/raw/branch/main/miniflux_scripts/filter_categories.js

Demo

Before applying the script, we have some categories, including one with (0) unread entries.

After

The category with (0) unread entries is hidden.


Feed organizer - using Tampermonkey

This one is for grouping together all feed entries by feed/author in the main on unread, read, and starred pages. I needed this one because by default, in unread tab, the feed entries are mixed all together and I often wanna consume content per feed/author and not in chronological order.

Source

https://gitea.zoemp.be/sansguidon/snippets/raw/branch/main/miniflux_scripts/feed_organizer.js

Demo


Distinct boring from interesting feeds thanks to objective ranking - with Custom JavaScript in global settings

When opening the "Show all entries" view of a feed, this trick will show you if you shall keep this feed or not. The classification is based on the ratio of starred entries vs total. In this case, clearly, my assistant tells me it's quite πŸ₯± boring. Other values are: Thinking πŸ’­ (in case we lack data), Interesting 😍 (we star a lot of items), Thinking πŸ€” (in case we stared at least some entries). Feel free to make it yours and customize the behavior!

Source

https://gitea.zoemp.be/sansguidon/snippets/raw/branch/main/miniflux_scripts/feed_classifier.js

Demo


Fetch original content - Per feed settings

This is a trick that works well with the majority of feeds so you can fetch the whole article content in your reader instead of just the excerpt.


Filter feed entries by title / content

I've customize the feed settings to exclude specific keywords, and on top of this I've also global rules which apply to all feeds, for excluding feed entries when keywords are found in their content or title. This makes it easy to exclude clickbait uninteresting or depressing content πŸ™‚

My current setting is here as an example https://gitea.zoemp.be/sansguidon/snippets/raw/branch/main/miniflux/block.rules (RSS)

In this case I follow news with heavy metal album releases and I'm excluding specific genre like Death Metal. I'm also abusing the feature to avoid being spammed with recurrent news like Olympic games (Paris 2024). Finally there are already many reasons for me to be anxious, and I do not need more. The last rule saves me from the useless negative news. I keep fine tuning the list and I could improve this by including terms from public blacklists, like this.


Startup options

You can override Miniflux behavior with some environment variables. See https://miniflux.app/docs/configuration.html for more configuration options.

Those are mine and make Miniflux more indulgent to unstable RSS feeds.

export HTTP_CLIENT_TIMEOUT=60
export POLLING_PARSING_ERROR_LIMIT=6

Last updated: Sept 5, 2024 around 9:51 AM CEST in πŸ—ΊοΈ Brussels, Belgium.

Effective content curation

I went up with this workflow that seem to pass the test of time and I'm sharing it with you :

  • I manage to keep up with Inbox zero, almost. The only mails I keep are mostly invoices/accounting related and require sometimes discussion with accountant and my partner. I try anyway to snooze them for later and schedule them as tasks.
  • I'm using ChatGPT Β» Summarize & Chat extension for Brave/Chromium (browsers) in order to save time at scrolling long articles in my inbox but yet it's important to note it's shrinking content more than summarizing it.
  • I'm not subscribing to any newsletter, everything is read through MiniFlux (RSS curator. If you don't know about that, read -> what is RSS?), combined with RSS-Bridge and ChangeDetection and some tips, all self-hosted. For any newsletter that cannot be replaced with RSS feed, I rely on my hero https://kill-the-newsletter.com/. And if email has your preference over RSS, I recommend you BlogToTrottr to follow RSS/Atom in real-time by email.
  • I edit my Feed titles with emojis expressing how I feel about their interest : πŸ˜• (Boring?) πŸ˜ƒ (Joyful read) etc.
  • I categorize feeds and label them also with emojis and sort them from the best to the worst. Those visuals clues really help. When I see nothing interesting for a while in any RSS I've subscribed to, I remove it from Miniflux.
  • I'm customizing my RSS curation in Miniflux through some hacks.
  • I dreaming to keep a maximum of 20/30 RSS feeds of interest but reality is I have hundred. Among those, I find maybe a dozen to be absolutely fantastic and I'm even sharing them in my /links section.
  • I've configured Tampermonkey browser extension to take control of the rendering of my RSS feeds list and replace the whole page with "FOCUS", at least 80% of time.
  • Something too long to read but that looks interesting is immediately dropped from Miniflux and shared/saved into Shaarli for later read. The goal is to declutter my subscriptions inbox.
  • Articles I browser randomly and are already saved in Shaarli are saved with tags like "x2" if it's second time I save them, "x3" if it's the third save I save them, etc.
  • If I find any image or PDF of interest, I save them locally to my Dropbox folder of interest. I have a folder for Books, which is subject to automatic triage with some scripting, also my ePubs are automatically converted to PDF. Duplicate files are moved to subfolders like "x2" if it's second time I save the same book, "x3" if it's third time, etc.
  • Everything in Shaarli is manually labelled based on keywords because Shaarli does not support automatic labelling like Wallabag. I don't want to waste anytime adding manual labels so I'm likely about to integrate similar features either as a plugin for Shaarli, either in Tapas which is my new project I elaborate in Ideas.
  • I subscribe to only 1 podcast which is Bombo Podcast, the one of my partner.
  • I want to take time for whatever is worth reading, and skip the rest fast.
  • Whatever is not worth is submitted to shrinking.

Nerds Against Clutter: My Digital Downsizing Diary

Declutter and letting go.

  • Dropping Discord, Diaspora, Daily.dev, maybe Pixelfed and Mastodon next (done, by March 2024). Too buggy, too noisy.
  • Kissed Google Keep goodbye and embraced Obsidian even more, thanks to the Importer plugin.
  • Trying to escape the WhatsApp surveillance state. I'm axing useless groups left and right.
  • Scrubbing my old web presence. It's like digital housekeeping.
  • Using Syncthing now. Real-time sync across devices without cloud middlemen. Dropbox, you're on notice.
  • Deploying FDUPES for disk decluttering – it's a duplicate file slaughterhouse. Throwing inotifywait into the mix for smart folder monitoring, because who likes manual mess management?
  • Cut down on RSS. I've dropped Wallabag (done by November 2024). I'm still using Miniflux. and Shaarli with their weaknesses. Thinking about it. Bookmarking tools still suck somehow and I can't see a better alternative (yet) for my needs... yuck, so I'm working on my own thing, Tapas. Looking at the market for knowledge and bookmarks management tools, there is room for improvement in how we manage and consume information. Most of the hard work is on you for years with tools that connect to information.
  • Harnessing RSS-Bridge and Miniflux for streamlined info feeds. Using Changedetection for the unRSS-able stuff, i.e to monitor some indexes, lists, legal terms, release pages.
  • My tab hoarding was legendary, now capped at 18 with Tab Limiter. Browser zen achieved.
  • I have been known by my colleagues and partner to keep too many tabs open. My nerves cracked at reading other folks suffering same issue. So I decided to close a number of them, and limit each Window to 18 tabs with Tab Limiter.

Exploring and creating.

  • Blogging's up, but it's a discipline game. Need to turn Obsidian hoarding into public wisdom. Notebooks over phones, knowledge over scrolling.
  • Taming my Brave extension zoo with Context. It's like a digital bouncer for my browser. Funny, now I've more UX/Privacy oriented extensions than tabs.
  • Eyeing Geeqie to outsmart duplicate photos. Even my pixels need to be minimal.
  • cron jobs executing php scripts on a Cloudron LAMP instance is new digital butler, still a bit rough around the edges. Coding my own automation magic because their recipes are just appetizers for my needs.
  • Diving back into Rust. Cooking up something for productivity and knowledge management. Stay tuned.
  • And of course, some snowballs and video gaming to keep things balanced and fun.

To be continued.