PHPackages                             askvortsov/flarum-trust-levels - 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. askvortsov/flarum-trust-levels

Abandoned → [askvortsov/flarum-auto-moderator](/?search=askvortsov%2Fflarum-auto-moderator)Flarum-extension

askvortsov/flarum-trust-levels
==============================

Automatically assign groups based on activity.

v0.2.1(5y ago)3515MITPHP

Since Jan 18Pushed 5y ago1 watchersCompare

[ Source](https://github.com/askvortsov1/flarum-trust-levels)[ Packagist](https://packagist.org/packages/askvortsov/flarum-trust-levels)[ RSS](/packages/askvortsov-flarum-trust-levels/feed)WikiDiscussions master Synced today

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

Trust Levels
============

[](#trust-levels)

[![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667) [![Latest Stable Version](https://camo.githubusercontent.com/5f40a17d605ae9632dcd186b443f4713b6efa00fb30346e23f7981b8da5b2285/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f61736b766f7274736f76312f666c6172756d2d74727573742d6c6576656c732e737667)](https://packagist.org/packages/askvortsov/flarum-trust-levels)

A [Flarum](http://flarum.org) extension.

- Trust levels allow you to automatically manage group membership based on users' activity.
- Each trust level defines criteria that must be met (e.g. discussions started, posts made, etc), and a group.
- Users are automatically added to groups for all the trust levels that they qualify for when they log in.
- Other extensions (or local extenders) can add their own "metric drivers"

Inspired by Discourse's trust level system.

### Please Note

[](#please-note)

- Since these groups are managed automatically, we recommend maintaining a separate set of groups for trust levels.
- If you delete a trust level, you should also delete the associated group; otherwise, users in that trust level will remain in that group.
- To prevent errors, you cannot update a trust level's group after it has been created.
- Any metrics left disabled will not be counted. If all metrics are disabled for a given trust level, ALL users will receive that level.
- If a group is managed by multiple trust levels, the user will be added to the group as long as they are in at least one of the trust levels.

### Extensibility

[](#extensibility)

This extension is extremely flexible, and can be extended to add custom metric drivers! If your extension or community has some custom metrics that are important for automatically managing groups, you can make a custom metric driver by implementing `Askvortsov\TrustLevels\Metric\MetricDriverInterface`, and registering that driver via the `Askvortsov\TrustLevels\Extend\TrustLevel` extender.

### TODO:

[](#todo)

- Add support for more metrics:
    - Posts read
    - Time spent on forum
    - Days visited
    - Days since account creation
    - Etc
- Add support for dated metrics (discussions created in the past X days)
- Develop a data collection extension, which could cache things such as like counts, to improve performance on large forums

### Screenshots

[](#screenshots)

[![Admin](https://camo.githubusercontent.com/f4663bd843a381979e9d0a5fca37acf4921d719c6eef3976a4f9b67597c189cc/68747470733a2f2f692e696d6775722e636f6d2f6e4953673565782e706e67)](https://camo.githubusercontent.com/f4663bd843a381979e9d0a5fca37acf4921d719c6eef3976a4f9b67597c189cc/68747470733a2f2f692e696d6775722e636f6d2f6e4953673565782e706e67)[![Set Metrics](https://camo.githubusercontent.com/cb5262ed9155f727a3a53503c55011abbf82fa5abc5743739358ef593b09d6d9/68747470733a2f2f692e696d6775722e636f6d2f383072304d72372e706e67)](https://camo.githubusercontent.com/cb5262ed9155f727a3a53503c55011abbf82fa5abc5743739358ef593b09d6d9/68747470733a2f2f692e696d6775722e636f6d2f383072304d72372e706e67)[![Edit User](https://camo.githubusercontent.com/24f6abb3c7c478d93d18367bfe7480b93efe736d8515c5c50ac42201485a2b2c/68747470733a2f2f692e696d6775722e636f6d2f54387371736f722e706e67)](https://camo.githubusercontent.com/24f6abb3c7c478d93d18367bfe7480b93efe736d8515c5c50ac42201485a2b2c/68747470733a2f2f692e696d6775722e636f6d2f54387371736f722e706e67)

### Installation

[](#installation)

```
composer require askvortsov/flarum-trust-levels
```

### Updating

[](#updating)

```
composer update askvortsov/flarum-trust-levels
```

### Links

[](#links)

- [Packagist](https://packagist.org/packages/askvortsov/flarum-trust-levels)
- [Github](https://github.com/askvortsov1/flarum-trust-levels)
- [Discuss](https://discuss.flarum.org/d/25977-trust-levels-automatic-group-assignment)

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 90.6% 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 ~9 days

Total

7

Last Release

1880d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/545a920fc6d01092248f49fb305da628a1bcff5b357a9b162cf0872e2d5ff3c1?d=identicon)[askvortsov](/maintainers/askvortsov)

---

Top Contributors

[![askvortsov1](https://avatars.githubusercontent.com/u/38059171?v=4)](https://github.com/askvortsov1 "askvortsov1 (58 commits)")[![flarum-bot](https://avatars.githubusercontent.com/u/39334649?v=4)](https://github.com/flarum-bot "flarum-bot (4 commits)")[![jaspervriends](https://avatars.githubusercontent.com/u/4417659?v=4)](https://github.com/jaspervriends "jaspervriends (2 commits)")

---

Tags

flarum

### Embed Badge

![Health badge](/badges/askvortsov-flarum-trust-levels/health.svg)

```
[![Health](https://phpackages.com/badges/askvortsov-flarum-trust-levels/health.svg)](https://phpackages.com/packages/askvortsov-flarum-trust-levels)
```

###  Alternatives

[fof/upload

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

188171.7k15](/packages/fof-upload)[fof/byobu

Well integrated, advanced private discussions.

61105.8k9](/packages/fof-byobu)[fof/gamification

Upvotes and downvotes for your Flarum community

4157.1k6](/packages/fof-gamification)[fof/user-bio

Add a user bio to user profiles

2196.5k9](/packages/fof-user-bio)[flarum-lang/russian

Russian language pack for Flarum.

13126.1k](/packages/flarum-lang-russian)[fof/drafts

Allow users to create post and discussion drafts

1771.1k5](/packages/fof-drafts)

PHPackages © 2026

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