PHPackages                             pubvana/profiles - 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. pubvana/profiles

ActiveFlightphp-plugin[Utility &amp; Helpers](/categories/utility)

pubvana/profiles
================

Profile manager for Pubvana

0.2.2(1mo ago)031MITPHPPHP ^8.1

Since Apr 25Pushed 1mo agoCompare

[ Source](https://github.com/Pubvana-CMS/profiles)[ Packagist](https://packagist.org/packages/pubvana/profiles)[ RSS](/packages/pubvana-profiles/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (3)Dependencies (4)Versions (9)Used By (1)

[![Stable? Not Quite Yet](https://camo.githubusercontent.com/8712c441bb32fd8db507e0008c5d13e30def50064f8fcbc689fbcf5191f7d2af/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f737461626c652533462d6e6f7425323071756974652532307965742d626c75653f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/pubvana/profiles)[![License](https://camo.githubusercontent.com/9e958b466ae5d6f8820d1e9fe16c60c6e4e580f658a2ad594ae00f52096952e8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f70756276616e612f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/pubvana/profiles)[![PHP Version](https://camo.githubusercontent.com/4841205060657f7bfec7d145ee345a361257e784674c290c7a40817567e1c142/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f70756276616e612f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/pubvana/profiles)[![Monthly Downloads](https://camo.githubusercontent.com/876e97d49f371e21afd077d635bc42eda881fa81bf5dbc06691fa683d05df12c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646d2f70756276616e612f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/pubvana/profiles)[![Total Downloads](https://camo.githubusercontent.com/6bbcf13e7209d87c75022aba2dbc99afb7b25151081f73cc28a571c1def3a85b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f70756276616e612f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/pubvana/profiles)[![GitHub Issues](https://camo.githubusercontent.com/8fb994f39d594b83fcb77e1b45ed627a9ac1e1527b65e4c39547d7917c3de5b6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f50756276616e612d434d532f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://github.com/Pubvana-CMS/profiles/issues)[![Contributors](https://camo.githubusercontent.com/6854c19e5883396a2d12163ee7de0dd12081ef58f809ae8653faf6eb2031fce6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6e7472696275746f72732f50756276616e612d434d532f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://github.com/Pubvana-CMS/profiles/graphs/contributors)[![Latest Release](https://camo.githubusercontent.com/9d678d263f7a8af22ef61ce15e5405b7287a4192cfbe270c3268a59389d8a2ec/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f50756276616e612d434d532f70726f66696c65733f7374796c653d666f722d7468652d6261646765)](https://github.com/Pubvana-CMS/profiles/releases)[![Contributions Welcome](https://camo.githubusercontent.com/9db3f8b82ea88469efd296a9305fc00f40b4c9450bb6b539d42d339fa6963444/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f6e747269627574696f6e732d77656c636f6d652d626c75653f7374796c653d666f722d7468652d6261646765)](https://github.com/Pubvana-CMS/profiles/pulls)

Pubvana Profiles
================

[](#pubvana-profiles)

**I noticed folks downloading some of these packages. I'm super grateful, Thank You! I would like to let folks know until this notice disappears I'm doing a lot of breaking changes without worrying about them. Once versions are up around 0.5.x things should settle down.**

User profiles module for [Pubvana](https://pubvanacms.com). Built as a [Flight School](https://github.com/enlivenapp/flight-school) plugin.

Features
--------

[](#features)

- Per-user profile records linked to Shield users
- Avatar support via the media picker widget
- Profile fields: display name, bio, avatar, website, Twitter, Facebook, LinkedIn
- Profile service mapped on `$app->profiles()`
- Registers an `adext` page contribution for user edit tabs when admin is present

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

[](#requirements)

- PHP 8.1+
- `enlivenapp/flight-school`
- `enlivenapp/flight-shield`
- `enlvienapp/migrations`
- `flightphp/active-record`

Recommends
----------

[](#recommends)

- `pubvana/admin` (Admin UI for user edit tabs and profile management)
- `pubvana/media` (for Avatar Image support)

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

[](#installation)

```
composer require pubvana/profiles
```

Enable in `app/config/config.php`:

```
'plugins' => [
    'pubvana/profiles' => [
        'enabled'  => true,
        'priority' => 70,
    ],
],
```

Migrations package creates the `profiles` table automatically on first load.

Flight School config
--------------------

[](#flight-school-config)

This package uses Flight School's return-array config format. `src/Config/Config.php` returns the package defaults as an array, Flight School stores that array under `pubvana.profiles` on `$app`, and the current public route prefix is defined there with `'routePrepend' => 'profile'`.

Model
-----

[](#model)

The package also exposes a service on `$app->profiles()` for common profile lookups and updates.

The `Profile` model provides:

- `findByUserId(int $userId)` — find a profile by user ID
- `findOrCreate(int $userId)` — find or create (lazy initialization)
- `updateFromArray(array $data)` — update allowed fields from form POST data

Schema
------

[](#schema)

ColumnTypeNotes`id`intPrimary key`user_id`intForeign key to `users``display_name`varchar, nullable`bio`text, nullable`avatar`varchar, nullablePath to media image`website`varchar, nullable`twitter`varchar, nullable`facebook`varchar, nullable`linkedin`varchar, nullable`created_at`datetime`updated_at`datetimeLicense
-------

[](#license)

MIT

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance93

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

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

Total

8

Last Release

35d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3036663?v=4)[Mike W](/maintainers/enlivenapp)[@enlivenapp](https://github.com/enlivenapp)

---

Top Contributors

[![enlivenapp](https://avatars.githubusercontent.com/u/3036663?v=4)](https://github.com/enlivenapp "enlivenapp (8 commits)")

### Embed Badge

![Health badge](/badges/pubvana-profiles/health.svg)

```
[![Health](https://phpackages.com/badges/pubvana-profiles/health.svg)](https://phpackages.com/packages/pubvana-profiles)
```

PHPackages © 2026

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