This commit is contained in:
Tomasz Borychowski
2020-11-01 15:51:25 +00:00
parent c00ded115d
commit a18c856eb9
3 changed files with 111 additions and 2 deletions

View File

@@ -0,0 +1,45 @@
# Miniflux-filter
Filter for miniflux - "mark as read" all unwanter articles.
I created that before miniflux added some basic filtering. Maybe still useful to someone.
The difference from the built-in filtering is that this marks articles as read, whereas the built-in filtering filters articles out BEFORE adding them to the DB.
<br>
- [Github repo](https://github.com/tborychowski/miniflux-filter)
## docker-compose.yml
```yml
---
version: '3'
services:
miniflux-filter:
image: tborychowski/miniflux-filter
container_name: miniflux-filter
restart: unless-stopped
environment:
- TZ=Europe/Dublin
- HOST=https://rss.example.com
- API_KEY=<YOUR MINIFLUX API KEY>
- CHECK_EVERY_S=300 # 300 seconds = 5 min
ports:
- "5011:3000"
volumes:
- ./filters.yml:/app/filters.yml
- ./logs:/app/logs # optional
```
## filters.yml
This is a simple list of matchers: it loops through the unread articles and for every one of them - it loops through this list. If the article URL matches a filter `url` and the article title contains the string from `title` field - this article will be marked as read.
```yml
filters:
- url: 'feed.example.com' # match feed url
title: 'windows 10' # match title
- url: 'feed.example.com'
title: 'sponsored'
- url: 'feed.another.com'
title: 'spam'
```

56
apps/rss/miniflux.md Normal file
View File

@@ -0,0 +1,56 @@
# Miniflux
The best RSS reader that I've tested. Simple, extremely fast and minimalistic.
<br>
- [Homepage](https://miniflux.app/)
- [Github repo](https://github.com/miniflux/v2)
- [Docs](https://miniflux.app/docs/index.html)
## docker-compose.yml
```yml
version: '3'
services:
miniflux:
image: miniflux/miniflux:nightly
ports:
- "5010:8080"
depends_on:
- db
environment:
- DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
- RUN_MIGRATIONS=1
- CREATE_ADMIN=1
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=test123
db:
image: postgres:latest
environment:
- POSTGRES_USER=miniflux
- POSTGRES_PASSWORD=secret
volumes:
- ./db:/var/lib/postgresql/data
```
## Tips & Tricks
- [Rules](https://miniflux.app/docs/rules.html) can be set for every feed source:
### Filter Rules - block rules
exclude articles containing a word (case insensitive), e.g.
```
(?i)windows,(?i)miniflux
```
### Rewrite rules
```
add_dynamic_image,add_image_title,add_youtube_video
```
### Scraper rules
This is just a css selector for the main article DOM element, e.g.:
```css
#phContent_divMetaBody>p, #phContent_divMetaBody>.content-image-wrapper
```