PHPackages                             shebaoting/flarum-rss - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. shebaoting/flarum-rss

ActiveFlarum-extension[Utility &amp; Helpers](/categories/utility)

shebaoting/flarum-rss
=====================

A Flarum extension that aggregates and displays RSS/Atom feeds.

2.0.2(yesterday)00MITJavaScriptPHP ^8.3CI failing

Since Sep 7Pushed yesterday1 watchersCompare

[ Source](https://github.com/shebaoting/flarum-rss)[ Packagist](https://packagist.org/packages/shebaoting/flarum-rss)[ RSS](/packages/shebaoting-flarum-rss/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (5)Versions (6)Used By (0)

RSS
===

[](#rss)

[![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667) [![Latest Stable Version](https://camo.githubusercontent.com/b66d35d705aa4dc00c8a0b689357a77ce7ab2ecccf2111672aba7bedde9ae4ed/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f73686562616f74696e672f666c6172756d2d7273732e737667)](https://packagist.org/packages/shebaoting/flarum-rss) [![Total Downloads](https://camo.githubusercontent.com/b5908bd935d8892a75a12c22c9fe85504264717d6d2a1759a1f14bc360259192/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f73686562616f74696e672f666c6172756d2d7273732e737667)](https://packagist.org/packages/shebaoting/flarum-rss)

A Flarum 2.x extension that aggregates RSS/Atom feeds, displays blog articles in a dedicated feed page or the main discussion list, and lets users start native Flarum discussions from RSS articles only when comments are needed.

[Read the Chinese documentation](README.zh-CN.md)

Features
--------

[](#features)

- Manage RSS/Atom sources in the admin panel.
- Review user-submitted RSS sources before they become public.
- Bind each RSS source to a Flarum user. When an RSS article becomes a real discussion, that user is used as the discussion author.
- Preview a source in the admin panel by fetching the live RSS/Atom feed in real time.
- Add a blank row at the bottom of the admin source list for quick entry.
- Display RSS articles on a dedicated "Independent Blogs" page.
- Optionally mix RSS articles into the homepage discussion list by publish time.
- Add homepage toolbar buttons for switching between the mixed RSS list and the native discussion list, plus submitting a new RSS source.
- Add a per-user setting so each member can choose whether the homepage defaults to RSS mixed mode.
- Keep RSS articles out of the Flarum discussions table until a user comments.
- Provide a virtual RSS article page before the first comment. The page uses native discussion-like UI and shows the original source URL as the first post content.
- Create a real Flarum discussion lazily when the first comment is posted, linking it back to the RSS item.
- Assign configured Flarum tags to lazily created RSS discussions.
- Store RSS items in a separate `rss_items` table to avoid duplicating external articles as discussions before interaction.
- Include English and Chinese language files.

Requirements
------------

[](#requirements)

- Flarum `^2.0.0-beta`
- PHP `^8.3`
- Composer

Installation
------------

[](#installation)

Install with Composer:

```
composer require shebaoting/flarum-rss:"^2.0"
php flarum migrate
php flarum cache:clear
```

Enable the extension from the Flarum admin panel.

Updating
--------

[](#updating)

```
composer update shebaoting/flarum-rss:"^2.0"
php flarum migrate
php flarum cache:clear
```

If your forum still requires the old package name, switch the Composer requirement first:

```
composer remove shebaoting/rss --no-update
composer require shebaoting/flarum-rss:"^2.0" -W
```

Admin Configuration
-------------------

[](#admin-configuration)

Open the RSS extension page in the admin panel.

Available settings:

- **Show RSS articles in the homepage list**: when enabled, RSS articles can be mixed into the main homepage list.
- **Tag for RSS discussions**: the tag used when an RSS article is converted into a real Flarum discussion after the first comment.

The source table supports:

- RSS source title and URL editing.
- Approval status toggle.
- Bound user avatar, with support for changing or removing the bound user.
- Real-time source preview.
- Source deletion.
- A permanent blank row for adding the next source.

User-submitted RSS sources are pending by default and must be approved by an admin before their articles are shown publicly.

Forum Usage
-----------

[](#forum-usage)

When homepage RSS mode is enabled globally, the homepage toolbar includes:

- A switch button to toggle between the RSS mixed list and the native Flarum discussion list.
- An add button that opens the RSS source submission modal.

Users also get an **RSS** section on `/settings`. The **Show RSS articles on the homepage** switch controls that user's default homepage mode:

- On: the homepage defaults to the RSS mixed list.
- Off: the homepage defaults to the native Flarum discussion list.

RSS Discussions and Comments
----------------------------

[](#rss-discussions-and-comments)

RSS articles are not inserted into Flarum's `discussions` table just because they were fetched.

Instead, this extension keeps fetched articles in `rss_items`. In the list view they look like discussions, but they stay separate until a user comments.

Before the first comment:

- The comment count links to a virtual RSS article page.
- The page uses native Flarum-style discussion UI.
- The first post content only shows the original article URL.

After the first comment:

- A real Flarum discussion is created.
- The configured tags are applied.
- The RSS source's bound user becomes the discussion and first-post author.
- The user's comment is saved as a normal Flarum comment post.
- Future clicks go to the real discussion.

This keeps the forum database clean while still allowing community discussion around RSS articles.

Fetching Feeds
--------------

[](#fetching-feeds)

The extension registers the `rss:fetch` command.

Fetch all approved RSS sources:

```
php flarum rss:fetch
```

Test a single URL without storing it:

```
php flarum rss:fetch "https://example.com/feed.xml"
```

The command is scheduled hourly through Flarum's scheduler. Make sure your server runs the Flarum scheduler, for example:

```
* * * * * cd /path/to/flarum && php flarum schedule:run >> /dev/null 2>&1
```

Upgrading From Older Versions
-----------------------------

[](#upgrading-from-older-versions)

Version `2.0.0` and later targets Flarum 2.x. If you are upgrading from an older Flarum 1.x installation, keep your existing database tables and run migrations:

```
composer require shebaoting/flarum-rss:"^2.0"
php flarum migrate
php flarum cache:clear
```

Existing RSS source and item data is reused by the Flarum 2.x version.

Links
-----

[](#links)

- [Packagist](https://packagist.org/packages/shebaoting/flarum-rss)
- [GitHub](https://github.com/shebaoting/flarum-rss)

###  Health Score

44

—

FairBetter than 91% of packages

Maintenance100

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~164 days

Total

5

Last Release

1d ago

Major Versions

0.3.1 → 2.0.02026-06-26

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/29738814?v=4)[牛铁柱](/maintainers/shebaoting)[@shebaoting](https://github.com/shebaoting)

---

Top Contributors

[![shebaoting](https://avatars.githubusercontent.com/u/29738814?v=4)](https://github.com/shebaoting "shebaoting (10 commits)")

---

Tags

flarum

### Embed Badge

![Health badge](/badges/shebaoting-flarum-rss/health.svg)

```
[![Health](https://phpackages.com/badges/shebaoting-flarum-rss/health.svg)](https://phpackages.com/packages/shebaoting-flarum-rss)
```

###  Alternatives

[fof/upload

The file upload extension for the Flarum forum with insane intelligence.

190185.4k17](/packages/fof-upload)[flarum-lang/russian

Russian language pack for Flarum.

12127.5k](/packages/flarum-lang-russian)[fof/byobu

Well integrated, advanced private discussions.

59112.4k11](/packages/fof-byobu)[fof/sitemap

Generate a sitemap

1796.4k2](/packages/fof-sitemap)[fof/webhooks

Automatically notify Discord, Slack, and Microsoft Teams when events happen on your Flarum forum.

2419.4k](/packages/fof-webhooks)[fof/discussion-language

Specify the language a discussion is written in &amp; sort by language

1032.0k2](/packages/fof-discussion-language)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
