Discussion Participants
Shows the avatars of everyone who has posted in a discussion, right in the discussion list, so people can see who is in a thread before they open it. Anyone the strip has no room for is counted on a badge that opens the full participant list.
Built for Flarum 2.

If you remember resofire/discussion-participants — that one's GitHub repository has been deleted. The Packagist listing is still up, so it looks installable, but every download 404s and it has to be removed before a 2.x upgrade. This is a fresh implementation for Flarum 2, not a fork, and it does not share its predecessor's habit of dropping a core database column on uninstall.
Installation
composer require ernestdefoe/discussion-participants
Existing forums need a one-time backfill — discussions that predate the extension have no participant data until it is built:
php flarum participants:populate
There is also a Recalculate button on the settings page that does the same job in the browser, in chunks, for anyone without shell access.
The strip
By default it sits on its own line under the discussion title. If you would rather rows stayed one line tall, you can put it inline beside the reply count instead:

The overflow badge
The badge counts the participants the strip has no room for. Clicking it opens the full roster, ten per page, with each person's post count in that discussion and a link to their profile:

Profile cards on hover
The same card Flarum shows on post authors, on the same timing:

It follows the reader's theme
Light or dark, and it mirrors correctly under right-to-left languages:

It keeps up on its own
- Live. A first-time replier's avatar appears without a refresh, and the counts move with it.
- Moderation-aware. Hiding, restoring and deleting a post all update the strip and the counts.
Settings
| Setting | Default | What it does |
| Where to show them | Under the title | Under the title on its own line, or inline beside the reply count. |
| Avatars shown | 6 | How many before the rest become an overflow badge. Up to 12. |
| Avatar size | Medium | Small, medium or large. |
| Order | Who posted first | Who posted first, who posted most, or who posted most recently. |
| The person who started the discussion | Never show them | Their avatar is already in the author column, so the strip leaves them out by default. You can also show them only if they replied as well, or always show them first. |
| Minimum participants | 1 | Discussions with fewer repliers get no strip, which keeps quiet lists clean. |
| Show the overflow badge | On | |
| Show a profile card on hover | On | |
| Limit to tags | All tags | Needs flarum/tags. Hidden entirely without it. |
A few notes on how it behaves
It does not touch discussions.participants_count. That column belongs to Flarum core. This extension keeps its own two tables and drops only those two on uninstall.
Your discussion list stays at a fixed query count. Participants are a real Eloquent relation, eager loaded across the whole page with a per-discussion limit, so a page of twenty discussions costs two extra queries rather than twenty. Serving them as genuine users resources also means the same person appearing in ten discussions is sent once, and Flarum's own avatar and profile-card components render them untouched.
The overflow badge counts repliers, not participants. Whoever started the discussion already has their avatar on the row in the author column, so counting them as hidden would overstate the badge by one on nearly every discussion.
Requirements
- Flarum
^2.0
- PHP
^8.3
- MySQL 8.0+ / MariaDB 10.6+ (the per-discussion limit uses a window function)
- Optional:
flarum/tags for the tag filter
Links
Released under the MIT licence. Bug reports and feature requests are welcome, and pull requests more so.