The FreshRSS team has just unveiled version 1.28 of this popular self-hosted RSS feed aggregator, introducing new sorting and filtering capabilities, enhanced search tools, performance optimizations, and bug fixes.
The update adds sorting and filtering by user-modified date, accompanied by a corresponding search operator, such as userdate:PT1H for the past hour. It also introduces sorting by article length, an advanced search form, and an overview of dates with the most unread articles.
On top of that, users can now mark articles as read by age when sorting by publication date, and the UI exposes links for transitions between groups of articles and direct navigation to the next transition. Plus, FreshRSS 1.28 expands feed visibility options and enables feed visibility sharing through the API.

Performance improvements target both interface responsiveness and scalability. User statistics scaling in the web UI and CLI has been enhanced to support instances with more than 1,000 users.
At the same time, SQL performance has been improved for critical queries on large databases, and API responses benefit from streaming of large payloads to reduce memory consumption and increase throughput.
The default Docker image has been updated to Debian 13 Trixie with PHP 8.4.11 and Apache 2.4.65. An alternative Docker image based on Alpine 3.23, PHP 8.4.15, and Apache 2.4.65 is also included.
Bug fixes in this release address issues, including OpenID Connect on Debian 13, incorrect sorting of new articles on MySQL and MariaDB databases, and an SQLite bind issue when adding tags.
Additional fixes cover SQL auto-update behavior, search encoding and quoting, database null handling, drag-and-drop queries, Docker healthcheck compatibility, and CLI user creation warnings.
For more information, see the changelog. If you want to install FreshRSS, follow our dedicated guide. In only a few minutes, you’ll have your own self-hosted RSS reader up and running.
Finally, keep in mind that FreshRSS 1.28 includes breaking changes that move unsafe autologin functionality to an extension, potentially affecting some existing extensions that require renaming deprecated functions.
