PHPackages                             vakata/user - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. vakata/user

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

vakata/user
===========

A PHP user class

4.4.5(1y ago)25.5k↓83.3%MITPHPPHP &gt;=8.0.0

Since Mar 21Pushed 1y ago2 watchersCompare

[ Source](https://github.com/vakata/user)[ Packagist](https://packagist.org/packages/vakata/user)[ Docs](https://github.com/vakata/user)[ RSS](/packages/vakata-user/feed)WikiDiscussions master Synced 2d ago

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

user
====

[](#user)

[![Latest Version on Packagist](https://camo.githubusercontent.com/05ddc4e2844e3cacefb77beba4888a0c795760fb275b26d8ee8d9f10b906b5fc/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f76616b6174612f757365722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/vakata/user)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)

A PHP user class.

Install
-------

[](#install)

Via Composer

```
$ composer require vakata/user
```

Usage
-----

[](#usage)

```
use \vakata\database\DB;
use \vakata\user\UserManagementDatabase;
use \vakata\user\Group;
use \vakata\user\User;

$db = new DB('mysql://root@127.0.0.1/dbname');

$usrm = new UserManagementDatabase($db, [
    'tableUsers'             => 'users',
    'tableProviders'         => 'user_providers',
    'tableGroups'            => 'groups',
    'tablePermissions'       => 'permissions',
    'tableGroupsPermissions' => 'group_permissions',
    'tableUserGroups'        => 'user_groups'
]);

// get a user by ID
$user = $usrm->getUser(1);
// or by a provider
$user = $usrm->getUserByProviderID($provider, $providerID);

// add a group
$group = new Group(1, "Name", ["some", "permissions"]);
$usrm->saveGroup($group);
// add the new group to a user
$user->addGroup($group);
$usrm->saveUser($user);
```

Read more in the [API docs](docs/README.md)

Testing
-------

[](#testing)

```
$ composer test
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [vakata](https://github.com/vakata)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance42

Moderate activity, may be stable

Popularity24

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity82

Battle-tested with a long release history

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

Recently: every ~106 days

Total

63

Last Release

472d ago

Major Versions

1.2.1 → 2.0.02016-07-22

2.1.1 → 3.0.02016-08-12

3.6.2 → 4.0.02020-01-24

PHP version history (3 changes)1.0.0PHP &gt;=5.4.0

3.4.0PHP &gt;=7.0.0

4.3.0PHP &gt;=8.0.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/146052?v=4)[Ivan Bozhanov](/maintainers/vakata)[@vakata](https://github.com/vakata)

---

Top Contributors

[![vakata](https://avatars.githubusercontent.com/u/146052?v=4)](https://github.com/vakata "vakata (70 commits)")

---

Tags

uservakata

### Embed Badge

![Health badge](/badges/vakata-user/health.svg)

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

###  Alternatives

[lab404/laravel-impersonate

Laravel Impersonate is a plugin that allows to you to authenticate as your users.

2.3k18.6M64](/packages/lab404-laravel-impersonate)[sonata-project/user-bundle

Symfony SonataUserBundle

3545.8M44](/packages/sonata-project-user-bundle)[2amigos/yii2-usuario

Highly customizable and extensible user management, authentication, and authorization Yii2 extension

297285.0k16](/packages/2amigos-yii2-usuario)[lab404/laravel-auth-checker

Laravel Auth Checker allows you to log users authentication, devices authenticated from and lock intrusions.

225167.3k2](/packages/lab404-laravel-auth-checker)[yajra/laravel-acl

Laravel ACL is a simple role, permission ACL for Laravel Framework.

113117.5k1](/packages/yajra-laravel-acl)[rickycezar/laravel-jwt-impersonate

Laravel Impersonate is a plugin that allows to you to authenticate as your users.

25125.2k](/packages/rickycezar-laravel-jwt-impersonate)

PHPackages © 2026

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