PHPackages                             masoudnabavi/login\_pro - 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. masoudnabavi/login\_pro

ActiveLibrary

masoudnabavi/login\_pro
=======================

This is a library for logging in and authenticating in a system that has many features...

02PHP

Since Jun 6Pushed 4y ago1 watchersCompare

[ Source](https://github.com/masoudnabavi/login_pro)[ Packagist](https://packagist.org/packages/masoudnabavi/login_pro)[ RSS](/packages/masoudnabavi-login-pro/feed)WikiDiscussions main Synced 4w ago

READMEChangelogDependenciesVersions (1)Used By (0)

LoginPro
========

[](#loginpro)

[![Issues](https://camo.githubusercontent.com/1cf12b8fdb1df4a54f6afa5342baee09219fe52c166b21704b821784bc703885/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f6d61736f75646e61626176692f6c6f67696e5f70726f3f6c6162656c3d497373756573)](https://img.shields.io/github/issues/masoudnabavi/login_pro)[![Stars](https://camo.githubusercontent.com/1202973da939ab95dce1f9e22b3941fbc80e5a31b4977eea123e0a1277aad29c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f6d61736f75646e61626176692f6c6f67696e5f70726f)](https://img.shields.io/github/stars/masoudnabavi/login_pro)

This is a library for logging in and authenticating in the system, which has features such as: login with password and without password, login with username, mobile, code, email, working with this library is very easy.

Install
-------

[](#install)

```
composer require masoudnabavi/login_pro
```

Add to .env file
----------------

[](#add-to-env-file)

```
usePassword=0  //0 means you Dont Want To Use Password And 1 means You Want To Use Password
useCookie=0    // 0 means use Session And 1 means Use Cookie
sentCodeLimitNumber=3  //The number of times a user can receive a 2Step Code before their account is blocked

```

Add User Params And Validation
------------------------------

[](#add-user-params-and-validation)

```
    'mobile' => 'sometimes|iran_mobile|unique:users',
    'email' => 'sometimes|email|unique:users',
    'username' => 'sometimes|string|min:3|max:100|unique:users',
    'national_code' => 'sometimes|melli_code|unique:users',
    'password' => 'sometimes|string|min:6|max:200'

```

Edit User Params And Validation
-------------------------------

[](#edit-user-params-and-validation)

```
   'id' => 'sometimes|exists:users',
   'mobile' => 'sometimes|iran_mobile',
   'email' => 'sometimes|email',
   'username' => 'sometimes|string|min:3|max:100',
   'national_code' => 'sometimes|melli_code',
   'password' => 'sometimes|string|min:6|max:200'

```

Delete User Params And Validation
---------------------------------

[](#delete-user-params-and-validation)

```
    'id' => 'required|exists:users'

```

Login User Params And Validation
--------------------------------

[](#login-user-params-and-validation)

```
    'mobile' => 'sometimes|iran_mobile',
    'email' => 'sometimes|email',
    'username' => 'sometimes|string|min:3|max:100',
    'national_code' => 'sometimes|melli_code',
    'password' => 'sometimes|string|min:6|max:200'

```

Login As Second User
--------------------

[](#login-as-second-user)

```
    To Login As Second User Just Need To send Second Usser`s user_id

```

Routes
------

[](#routes)

```

Route::prefix('user')->group(function () {

    Route::get('login', [loginUserController::class, 'index'])->name('loginUserGet');
    Route::post('login', [loginUserController::class, 'login'])->name('loginUserPost');

    Route::get('register', [registerUserController::class, 'index'])->name('registerUserGet');
    Route::post('register', [registerUserController::class, 'register'])->name('registerUserPost');

    Route::get('forgetPassword', [forgetAndChangePasswordController::class, 'indexForget'])->name('forgetPasswordGet');
    Route::post('forgetPassword', [forgetAndChangePasswordController::class, 'forget'])->name('forgetPasswordPost');

    Route::post('2step', [twoStepAuthUserController::class, 'sendCode'])->name('2stepSendCodePost');

    Route::get('2stepCheck', [twoStepAuthUserController::class, 'indexCheck'])->name('2stepCheckGet');
    Route::post('2stepCheck', [twoStepAuthUserController::class, 'check'])->name('2stepCheckPost');
});

Route::middleware('authentications:isLogin')->group(function () {
    Route::prefix('user')->group(function () {

        Route::get('dashboard', function () {
            return 'This Is Dashboard!';
        })->name('dashboard');

        Route::post('login_as_second_user', [loginAsSecondUserController::class, 'saveSecondUserToken'])->name('loginSecondUserPost');

        Route::get('add', [addUserController::class, 'index'])->name('addUserGet');
        Route::post('add', [addUserController::class, 'add'])->name('addUserPost');

        Route::get('{id}/edit', [editUserController::class, 'index'])->name('editUserGet');
        Route::post('edit', [editUserController::class, 'edit'])->name('editUserPost');

        Route::delete('{id}/delete', [deleteUserController::class, 'delete'])->name('deleteUserDelete');

        Route::get('list', [listUserController::class, 'index'])->name('listUserGet');

        Route::get('changePassword', [forgetAndChangePasswordController::class, 'indexChange'])->name('changePasswordGet');
        Route::post('changePassword', [forgetAndChangePasswordController::class, 'change'])->name('changePasswordPost');

        Route::get('logout', [logoutController::class, 'index'])->name('logoutGet');

        Route::get('logout_second', [logoutSecondUserController::class, 'index'])->name('logoutSecondGet');

    });
});

```

Get Login User`s Data
---------------------

[](#get-login-users-data)

Every Where You Need User`s Data Just Paste This Code :

```
  getLoginUserDataController::getLoginUserData();

```

###  Health Score

15

—

LowBetter than 3% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity29

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/8ae292da2381702a344543fa124390ea245ec5d112e95ebd099ace5f41083a2a?d=identicon)[masoudnabavi](/maintainers/masoudnabavi)

---

Top Contributors

[![masoudnabavi](https://avatars.githubusercontent.com/u/20737003?v=4)](https://github.com/masoudnabavi "masoudnabavi (10 commits)")

### Embed Badge

![Health badge](/badges/masoudnabavi-login-pro/health.svg)

```
[![Health](https://phpackages.com/badges/masoudnabavi-login-pro/health.svg)](https://phpackages.com/packages/masoudnabavi-login-pro)
```

PHPackages © 2026

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