PHPackages                             maksatsaparbekov/kuleshov-auth - 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. maksatsaparbekov/kuleshov-auth

ActiveLibrary

maksatsaparbekov/kuleshov-auth
==============================

A Laravel package for integrating with external authentication services.

v2.x-dev(1y ago)0491MITPHP

Since Feb 8Pushed 9mo ago1 watchersCompare

[ Source](https://github.com/maksat607/kuleshov-auth)[ Packagist](https://packagist.org/packages/maksatsaparbekov/kuleshov-auth)[ RSS](/packages/maksatsaparbekov-kuleshov-auth/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (3)Versions (15)Used By (0)

Kuleshov Auth
=============

[](#kuleshov-auth)

Пакет для Laravel, предназначенный для интеграции с внешними сервисами аутентификации, обеспечивающий бесперебойную синхронизацию с системами третьих сторон для входа в систему и регистрации пользователей, используя специальные токены для безопасного доступа.

Установка
---------

[](#установка)

Через Composer:

#### composer require maksatsaparbekov/kuleshov-auth:dev-main

[](#composer-require-maksatsaparbekovkuleshov-authdev-main)

#### php artisan vendor:publish --provider="Maksatsaparbekov\\KuleshovAuth\\KuleshovAuthServiceProvider" --tag=config --force

[](#php-artisan-vendorpublish---providermaksatsaparbekovkuleshovauthkuleshovauthserviceprovider---tagconfig---force)

в вашем локальном каталоге config будет создан файл kuleshov-auth.php. Вы можете изменять параметры конфигурации в этом файле для настройки поведения пакета KuleshovAuth в соответствии с вашими требованиями.

Файл конфигурации содержит следующие ключевые параметры:

url - URL-адрес, который используется пакетом для выполнения внешних запросов. По умолчанию установлено значение . security\_key - Ключ безопасности, используемый для подписи запросов или для других целей безопасности. Значение по умолчанию - your-security-key. policies - Здесь вы можете указать классы политик, которые будут использоваться для авторизации действий в вашем приложении. chat\_room - Укажите свой собственный класс политики для чат-комнат. observers - В этом разделе вы можете указать наблюдателей (observers), которые будут реагировать на различные события в приложении. chat\_room\_message - Укажите свой класс наблюдателя для сообщений в чат-комнатах. routes - Настройки, связанные с маршрутизацией, включая промежуточное ПО (middleware), применяемое к маршрутам пакета. middleware - Массив промежуточного ПО, которое будет применяться к маршрутам. По умолчанию включает auth.access\_token и resolveModel.

### Установите детали вашего сервиса третьей стороны в вашем .env:

[](#установите-детали-вашего-сервиса-третьей-стороны-в-вашем-env)

KULESHOV\_AUTH\_URL=KULESHOV\_AUTH\_SECURITY\_KEY=SECURITY

\##Использование Чтобы избежать конфликтов с трейтом HasApiTokens Sanctum в вашей модели User при интеграции с пакетом Kuleshov Auth, вы можете просто закомментировать или удалить трейт HasApiTokens, если он не нужен для функциональности вашего приложения. Вместо этого вы будете использовать трейт AuthService, предоставляемый Kuleshov Auth, для обработки аутентификации. Для использования AuthService в вашей модели User:

use Maksatsaparbekov\\KuleshovAuth\\Traits\\AuthService;

class User extends Authenticatable { // use HasApiTokens use AuthService; }

Миграции
--------

[](#миграции)

Выполните миграции для создания необходимых таблиц:

php artisan migrate

Последний шаг - использование событий модели Eloquent:
------------------------------------------------------

[](#последний-шаг---использование-событий-модели-eloquent)

используйте
-----------

[](#используйте)

$user = User::where('phone', $phone)-&gt;first(); $user-&gt;update(\[ 'password' =&gt; Hash::make($password), \]);

вместо использования метода update напрямую на результате запроса: $user = User::where('phone', $phone)-&gt;update(\[ 'password' =&gt; Hash::make($password), \]);

Этот подход предпочтительнее, так как он позволяет сначала извлечь экземпляр модели, а затем обновить его. Это важно, потому что таким образом запускаются события модели Eloquent, такие как saving, saved, updating, и updated, что не происходит при использовании второго подхода.

Chats
-----

[](#chats)

Если вы хотите получить более подробную документацию, вы можете сгенерировать документацию Swagger для вашего проекта. Установите (composer require "darkaonline/l5-swagger") и настройте согласно документации. Откройте файл l5-swagger.php и добавьте следующие строки:

```
'annotations' => [
base_path('vendor/maksatsaparbekov/kuleshov-auth/src/Http/Controllers'), // добавьте это
base_path('vendor/maksatsaparbekov/kuleshov-auth/src/Models'), // добавьте это],

```

` use Chattable; chattable->car_title){
        return $this->chattable->car_title;
    }
    return $this->chattable?->car_title;
}
```

### Метод getTitleAttribute

[](#метод-gettitleattribute-1)

Этот метод возвращает название чата.

#### Описание

[](#описание-1)

Метод `getTitleAttribute` используется для получения названия чата из модели `chattable`. Если у вас есть собственный атрибут `car_title`, он будет использоваться для возврата названия чата. В противном случае будет использован атрибут по умолчанию.

#### Пример использования

[](#пример-использования-1)

```
public function getTitleAttribute()
{
    if ($this->chattable->car_title){
        return $this->chattable->car_title;
    }
    return $this->chattable?->car_title;
}
```

Затем выполните команду: php artisan l5-swagger:generate Эта команда сгенерирует документацию для вас. Подробнее можно узнать на странице L5 Swagger на GitHub

Kuleshov Auth
=============

[](#kuleshov-auth-1)

A Laravel package for integrating with external authentication services, providing seamless synchronization with third-party systems for user login and registration, leveraging custom tokens for secure access.

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

[](#installation)

Via Composer:

composer require maksatsaparbekov/kuleshov-auth:dev-main

Configuration

php artisan vendor:publish --provider="Maksatsaparbekov\\KuleshovAuth\\KuleshovAuthServiceProvider" --tag="config" php artisan vendor:publish --tag=kuleshov-auth-policies

Set your third-party service details in your .env: AUTH\_SERVICE\_URL=PROJECT\_SECURITY\_KEY=SECURITY

To use the AuthService in your User model:

use Maksatsaparbekov\\KuleshovAuth\\Traits\\UserTrait;

class User extends Authenticatable { use AuthService; }

Migrations

Run the migrations to create necessary tables:

php artisan migrate

last thing is to fire eloquent model events use:

$user = User::where('phone', $phone)-&gt;first(); $user-&gt;update(\[ 'password' =&gt; Hash::make($password), \]); rather then $user = User::where('phone', $phone)-&gt;update(\[ 'password' =&gt; Hash::make($password), \]);

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance47

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 99.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

Unknown

Total

1

Last Release

606d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ff2f0e79026c88876940784dc665d5138e27e267b347c4d96e16aab4cc5ce9de?d=identicon)[maksat607](/maintainers/maksat607)

---

Top Contributors

[![kuleshovchyngyz](https://avatars.githubusercontent.com/u/66666697?v=4)](https://github.com/kuleshovchyngyz "kuleshovchyngyz (223 commits)")[![maksat607](https://avatars.githubusercontent.com/u/13878300?v=4)](https://github.com/maksat607 "maksat607 (2 commits)")

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/maksatsaparbekov-kuleshov-auth/health.svg)

```
[![Health](https://phpackages.com/badges/maksatsaparbekov-kuleshov-auth/health.svg)](https://phpackages.com/packages/maksatsaparbekov-kuleshov-auth)
```

###  Alternatives

[mpyw/compoships-eager-limit

topclaudy/compoships + staudenmeir/eloquent-eager-limit

13122.4k](/packages/mpyw-compoships-eager-limit)[kitloong/eloquent-power-joins-with-compoships

The Laravel magic applied to joins, with compoships support

2616.4k](/packages/kitloong-eloquent-power-joins-with-compoships)

PHPackages © 2026

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