PHPackages                             shebaoting/flarum-avatar - 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-avatar

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

shebaoting/flarum-avatar
========================

Reddit-style avatar editor for Flarum.

2.0.8(today)00MITJavaScriptPHP ^8.3

Since Jun 27Pushed todayCompare

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

READMEChangelogDependencies (1)Versions (10)Used By (0)

Flarum Avatar
=============

[](#flarum-avatar)

[中文说明](README.zh-Hans.md)

Flarum Avatar is a Reddit-style avatar builder for Flarum 2. It replaces the default avatar upload flow with a layered SVG editor where users can style a full character, preview every item on the base avatar, pick outfits, tune colors, choose a background, and display the finished avatar in forum UI.

The editor is designed for communities that want a playful identity system instead of simple uploaded profile pictures. It keeps the experience inside Flarum, uses the active forum language, and stores each user's selections as structured avatar decoration data.

Screenshots
-----------

[](#screenshots)

[![Avatar editor outfit tab](docs/avatar-editor-1.png)](docs/avatar-editor-1.png)

[![Avatar editor item tab](docs/avatar-editor-2.png)](docs/avatar-editor-2.png)

Features
--------

[](#features)

- Reddit-style avatar editor page at `/avatar/edit`.
- Layered SVG rendering with correct ordering for body, head, eyes, hair, accessories, left hand, right hand, and outfit parts.
- Replacement-mode support for core body parts such as head, eyes, upper body, and lower body.
- Outfit support with grouped SVG parts and preview images.
- Item cards preview each asset on the default avatar, without showing file names or titles.
- Color controls for body, hair, eyes, and avatar background.
- Built-in solid, gradient, radial, conic, and striped background presets.
- Decorated avatars are shown in forum UI with a portrait crop so the character is readable at small sizes.
- Default Flarum avatar upload/remove UI is hidden while the extension is enabled.
- Clicking the user avatar in settings or on the user's profile opens the avatar editor.
- English and Simplified Chinese locale files are included.

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

[](#requirements)

- Flarum `^2.0.0-beta`
- PHP `^8.3`
- Composer
- Node.js and Yarn only when rebuilding frontend assets

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

[](#installation)

Install the extension with Composer:

```
composer require shebaoting/flarum-avatar:^2.0
php flarum migrate
php flarum cache:clear
php flarum assets:publish
```

For local development in this repository, the package can be loaded through a Composer path repository from the Flarum app:

```
{
  "repositories": {
    "shebaoting-avatar": {
      "type": "path",
      "url": "../packages/flarum-avatar"
    }
  }
}
```

Then require the package from the Flarum root:

```
composer require shebaoting/flarum-avatar:^2.0
php flarum migrate
php flarum cache:clear
php flarum assets:publish
```

Usage
-----

[](#usage)

After enabling the extension, users edit their avatar by clicking their avatar in:

- `/settings`
- their own user profile header

The editor opens at:

```
/avatar/edit

```

The default avatar upload and remove controls are intentionally hidden so the decoration editor becomes the only avatar-management entry point.

Asset Structure
---------------

[](#asset-structure)

Avatar assets are bundled in:

```
assets/avatars

```

The extension scans tab folders such as:

```
Outfits/
Tops/
Bottoms/
Hair/
Hats/
Eyes/
Face/
Left_Hand/
Right_Hand/

```

Normal tabs contain SVG files or item folders. The `Outfits` tab supports section folders, and every outfit item can be a folder containing multiple child SVG parts plus a preview image such as:

```
preview.png
preview.svg
preview.webp
preview.jpg
preview.jpeg

```

The default avatar is rendered from layered SVG files under:

```
assets/avatars/reddit-default-avatar-white-layers

```

This layered base allows items to replace or overlay specific body parts instead of simply stacking everything on top.

Frontend Development
--------------------

[](#frontend-development)

When changing forum or admin JavaScript, rebuild the bundled assets:

```
cd js
yarn install
yarn build
```

Then publish Flarum assets:

```
php flarum cache:clear
php flarum assets:publish
```

Localization
------------

[](#localization)

The extension includes:

```
locale/en.yml
locale/zh-Hans.yml

```

Flarum automatically selects the matching language according to the forum's current locale.

License
-------

[](#license)

MIT

Community &amp; Contact
-----------------------

[](#community--contact)

Community:

Email:

Available for custom Flarum extension development and general software development projects.

###  Health Score

42

—

FairBetter than 89% of packages

Maintenance100

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity54

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 ~0 days

Total

9

Last Release

0d ago

### 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 (11 commits)")

---

Tags

avatarflarumdecoration

### Embed Badge

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

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

###  Alternatives

[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/gamification

Upvotes and downvotes for your Flarum community

4062.0k7](/packages/fof-gamification)[fof/polls

 A Flarum extension that adds polls to your discussions

25130.2k9](/packages/fof-polls)[fof/user-bio

Add a user bio to user profiles

20102.0k9](/packages/fof-user-bio)[fof/sitemap

Generate a sitemap

1796.4k2](/packages/fof-sitemap)

PHPackages © 2026

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