Desktop notifications for Miniflux
  • Rust 67.3%
  • Nix 32.7%
Find a file
Ben Landon 8e20f12de7
fix: use the after query to avoid messy cache vectors and async notifs
The prior architecture relied upon the use of a `Vec<Entry>` which was
rather flawed, including the fact that it was capped at 1000 results
from the API endpoint. This also required more system resources to run
than were really necessary. Instead, send the request with
`&after=<timestamp>` to get just the entries since the last check.

Waiting on the threads spawned for notification actions could also lead
to stalls if the user ignores the notification rather than interacting
with it (either opening or closing). Instead, a lightweight
`tokio::spawn` can place it in the background where it will consume very
little compute time.
2026-08-29 23:39:24 -07:00
src fix: use the after query to avoid messy cache vectors and async notifs 2026-08-29 23:39:24 -07:00
.envrc feat: add a nix flake and update cargo deps 2026-08-29 01:35:22 -07:00
.gitignore feat: add a nix flake and update cargo deps 2026-08-29 01:35:22 -07:00
Cargo.lock fix: use the after query to avoid messy cache vectors and async notifs 2026-08-29 23:39:24 -07:00
Cargo.toml fix: use the after query to avoid messy cache vectors and async notifs 2026-08-29 23:39:24 -07:00
flake.lock feat: add a nix flake and update cargo deps 2026-08-29 01:35:22 -07:00
flake.nix fix: use the after query to avoid messy cache vectors and async notifs 2026-08-29 23:39:24 -07:00
LICENSE feat: add license 2023-12-20 23:31:42 -08:00
miniflux-notifier.service feat: add basic systemd service template 2023-12-21 12:46:23 -08:00
README.md fix: use the after query to avoid messy cache vectors and async notifs 2026-08-29 23:39:24 -07:00
treefmt.nix feat: add a nix flake and update cargo deps 2026-08-29 01:35:22 -07:00

Miniflux Notifier

Get desktop notifications at select intervals about new, unread articles from a Miniflux server.

The program is a daemon for linux that can be run on a per-user basis.

Building

Make sure you have the rust toolchain installed (see rustup.rs).

cargo build --release

The build binary is a single file located at target/release/miniflux-notifier.

Running

The program should be run as a daemon and thus, it is up to you to determine how your system should start it. If you use Systemd, I would recommend using a user service.