PHPackages                             philvdb/avatar-bundle - 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. [File &amp; Storage](/categories/file-storage)
4. /
5. philvdb/avatar-bundle

ActiveContao-bundle[File &amp; Storage](/categories/file-storage)

philvdb/avatar-bundle
=====================

Allows upload and administration of avatars (profile pictures) for Contao members and users

2.0.5(2y ago)0601LGPL-3.0-or-laterPHPPHP ^8.0

Since Aug 11Pushed 2y agoCompare

[ Source](https://github.com/philvdb/contao-avatar)[ Packagist](https://packagist.org/packages/philvdb/avatar-bundle)[ RSS](/packages/philvdb-avatar-bundle/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (24)Used By (0)

Contao Avatar Bundle
====================

[](#contao-avatar-bundle)

Introduction
------------

[](#introduction)

The Avatar Contao extension allows for (frontend) members and (backend) users to have avatar images associated with them that can be administrated by the users themselves as well as authorized backend users.

Technical information
---------------------

[](#technical-information)

This bundle has been forked from [terminal42/contao-avatar](https://github.com/terminal42/contao-avatar), it has been largely rewritten and updated to work with Contao &gt; 4.9 and PHP &gt; 8.0.

It should be compatible with existing avatar folders created by the original extension and insert tag syntax for existing tags has been preserved.

Most of the settings of the original extension have been removed, the only settings to be done in Contao are the sizes avatar images are resized to for members and users as well as the selection of default images for missing avatars.

Resizing of avatars now happens on the client browsers, server-side responsibility has been greatly reduced. Despite this, jQuery is also not required anymore. This extension now relies on Dropzone (which is bundled with the Contao Core anyway) and Croppie. Contrary to the original extension, avatars are now instantly saved (overwritten) on upload, there is no concept of temporary files until form submission anymore.

Usage
-----

[](#usage)

Avatars can be uploaded in the frontend by adding the avatar field to a personal data module. In the backend, avatars are administered in the member/user settings.

Get avatar in the frontend using insert tags:

```
{{avatar::member_current}} - current member
{{avatar::member_current::100x100}} - current member 100x100

{{avatar::member::ID}} - member ID
{{avatar::member::ID::100x100}} - member ID 100x100

{{avatar::user::ID}} - user ID
{{avatar::user::ID::100x100}} - user ID 100x100.

{{avatar_url::xx}} - return URL to asset image only
{{avatar_url_nodefault::xx}} - return empty string instead of default image if no personal avatar available

```

Rough concepts for developers:

- MemberAvatarService and UserAvatarService deal with Files as inputs and outputs, see AbstractAvatarService for a list of public methods.
- AvatarController will deal with uploads and deletion requests as well as provide rendered HTML when provided with a File (usually from an AvatarService)

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity78

Established project with proven stability

 Bus Factor1

Top contributor holds 61.1% 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 ~152 days

Recently: every ~128 days

Total

22

Last Release

1094d ago

Major Versions

1.3.4 → 2.0.02021-12-20

PHP version history (2 changes)1.0.0PHP &gt;=5.3.2

2.0.0PHP ^8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1567784?v=4)[Dr. Philip von der Borch](/maintainers/philvdb)[@philvdb](https://github.com/philvdb)

---

Top Contributors

[![qzminski](https://avatars.githubusercontent.com/u/193483?v=4)](https://github.com/qzminski "qzminski (33 commits)")[![Toflar](https://avatars.githubusercontent.com/u/481937?v=4)](https://github.com/Toflar "Toflar (14 commits)")[![cboelter](https://avatars.githubusercontent.com/u/550207?v=4)](https://github.com/cboelter "cboelter (5 commits)")[![fritzmg](https://avatars.githubusercontent.com/u/4970961?v=4)](https://github.com/fritzmg "fritzmg (1 commits)")[![tsarma](https://avatars.githubusercontent.com/u/683894?v=4)](https://github.com/tsarma "tsarma (1 commits)")

---

Tags

profilecontaomembersUsers

### Embed Badge

![Health badge](/badges/philvdb-avatar-bundle/health.svg)

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

###  Alternatives

[terminal42/contao-fineuploader

FineUploader bundle for Contao Open Source CMS

2052.9k4](/packages/terminal42-contao-fineuploader)[christianbarkowsky/contao-tiny-compress-images

This plugin automatically optimizes your images (JPG, PNG, WebP) by integrating with the popular image compression services TinyJPG and TinyPNG.

2719.0k](/packages/christianbarkowsky-contao-tiny-compress-images)[do-while/contao-backupdb-bundle

Backup of the Contao database, automatic backup, creation of website templates for the Install Tool

10107.0k1](/packages/do-while-contao-backupdb-bundle)

PHPackages © 2026

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