AI News HubLIVE
In-site rewrite2 min read

DistillFeed: RSS reader with AI-ranked items and summaries

DistillFeed is an RSS/Atom reader that uses AI to rank articles and generate summaries. It supports OpenAI and Ollama, offers cost safeguards, notification alerts via ntfy, and includes an arXiv daily digest plugin. The application is available on GitHub under the Apache License 2.0.

SourceHacker News AIAuthor: newolive

Notifications You must be signed in to change notification settings

Fork 0

Star 0

BranchesTags

Open more actions menu

Folders and files

NameName

Last commit message

Last commit date

Latest commit

History

11 Commits

11 Commits

.github/workflows

.github/workflows

deployment

deployment

distillfeed_arxiv

distillfeed_arxiv

docs/images

docs/images

examples

examples

rss_reader

rss_reader

tests

tests

.dockerignore

.dockerignore

.gitattributes

.gitattributes

.gitignore

.gitignore

CITATION.cff

CITATION.cff

Dockerfile

Dockerfile

LICENSE

LICENSE

Procfile

Procfile

README.md

README.md

config.example.toml

config.example.toml

install.sh

install.sh

launch.sh

launch.sh

pyproject.toml

pyproject.toml

render.yaml

render.yaml

test-distillfeed.sh

test-distillfeed.sh

upd.sh

upd.sh

uv.lock

uv.lock

Repository files navigation

RSS reader that provides contents ranked by AI, as well as summaries. It checks RSS feeds, stores the articles locally, and can use OpenAI or Ollama to score new entries (relevance) and write topic summaries.

Highlights

RSS and Atom reading with OPML import and export

AI relevance scores and concise summaries

An arXiv daily digest (plugin), included with the application

AI cost safeguards

Per-group and per-feed rules for optional notification alerts with ntfy (can be sent to mobile so)

OpenAI and local Ollama support

A guided first launch

Local use by default, with Docker and server deployment files included

Install

DistillFeed requires Python 3.11 or newer on macOS or Linux.

Clone git clone https://github.com/ibaaj/distillfeed or download this repository, open a terminal in the project directory, and run:

./launch.sh

On the first run, DistillFeed creates its own Python environment and opens a local setup page.

Later, use the same command to start the reader again. If the browser cannot open automatically, run ./launch.sh --no-browser and open the address shown in the terminal.

Demo setup

For the release demo, run:

./launch.sh --demo

Enter an OpenAI API key during setup if you want the AI and arXiv parts of the demo.

Feed checks and summaries

DistillFeed deliberately keeps these actions separate:

Check feeds downloads RSS or Atom documents and stores new entries. It does not use AI.

Update summaries checks readiness and AI cost safeguards, evaluates eligible entries, then publishes the affected summaries. This uses AI.

arXiv daily digest (plugin)

There is an arXiv digest plugin inspired by this project. I

Enable and configure it during first launch, or later under AI summaries. Use Check arXiv to retrieve papers and Update daily digest to produce the digest.

Subscriptions

Use Manage in the subscription panel to add, rename, move, reorder or delete groups and feeds.

Notices and alerts

There are two separate notification features:

System notices explain what DistillFeed itself is doing: completed updates, partial feed failures, missing AI configuration, retries, budget blocks and similar operational information.

Other devices sends selected articles to an ntfy server.

Configure ntfy under Settings → Other devices. System notices do not require ntfy and remain available inside the reader.

Personal generated feeds

DistillFeed can read XML produced by a personal scraper. Set a directory:

[feeds] generated_feed_directory = "/srv/distillfeed/generated-feeds"

Manual installation

The normal launch script is recommended. For an existing server workflow:

python3 -m venv .venv . .venv/bin/activate python -m pip install ".[server]" cp config.example.toml config.toml distillfeed init distillfeed serve

The example configuration listens only on 127.0.0.1:8080. Set OPENAI_API_KEY before starting the server if you prefer an environment-managed OpenAI credential.

License

DistillFeed is released under the Apache License 2.0. See LICENSE.

About

RSS reader with AI-ranked items and summaries.

Resources

Readme

License

Apache-2.0 license

Uh oh!

There was an error while loading. Please reload this page.

Activity

Stars

0 stars

Watchers

0 watching

Forks

0 forks

Report repository

Releases

No releases published

Packages 0

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

Python 70.4%

HTML 9.8%

JavaScript 9.2%

Shell 8.8%

CSS 1.8%

Dockerfile 0.0%