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

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

hos3ein/novel-auth
==================

Laravel authentication with password or otp or both and highly configurable

v1.0.0(3y ago)191MITPHPPHP ^7.4|^8.0

Since Dec 21Pushed 3y ago1 watchersCompare

[ Source](https://github.com/hos3ein/novel-auth)[ Packagist](https://packagist.org/packages/hos3ein/novel-auth)[ Docs](https://github.com/hos3ein/novel-auth)[ RSS](/packages/hos3ein-novel-auth/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (5)Versions (2)Used By (0)

Novel Auth
----------

[](#novel-auth)

[![Latest Stable Version](https://camo.githubusercontent.com/2346a41d3fbe328eff96e0499bbffd8e278d20a7cd4d6551463b8372794d2ca7/687474703a2f2f706f7365722e707567782e6f72672f686f733365696e2f6e6f76656c2d617574682f76)](https://packagist.org/packages/hos3ein/novel-auth)[![Packagist Download](https://camo.githubusercontent.com/7c8a05c0ac1c57ad4ea1ecc560b2a504c8ad392b02085ab4f53d49f0b52a14c6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f686f733365696e2f6e6f76656c2d61757468)](https://packagist.org/packages/hos3ein/novel-auth)[![Latest Unstable Version](https://camo.githubusercontent.com/a68460509c8449c283efa0b1264fc61b617705b0ab8bd9428fa4a1d2ef064fc8/687474703a2f2f706f7365722e707567782e6f72672f686f733365696e2f6e6f76656c2d617574682f762f756e737461626c65)](https://packagist.org/packages/hos3ein/novel-auth)[![Packagist Stars](https://camo.githubusercontent.com/cb5f2a3a8f34a84c9b5e0d359f12c0109ca333bc630b802531b09c43143b2dc4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f73746172732f686f733365696e2f6e6f76656c2d61757468)](https://packagist.org/packages/hos3ein/novel-auth)[![Packagist PHP Version Support](https://camo.githubusercontent.com/e07edc6607c08f124295a6d613698fc19f86e2718140752bb0f6cf369d05cb9d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f686f733365696e2f6e6f76656c2d61757468)](https://packagist.org/packages/hos3ein/novel-auth)[![License](https://camo.githubusercontent.com/4212b45c47db39d7410f7f6cf86a1ec0920cda1d635fe3ff2bca069c0eda22ae/687474703a2f2f706f7365722e707567782e6f72672f686f733365696e2f6e6f76656c2d617574682f6c6963656e7365)](https://packagist.org/packages/hos3ein/novel-auth)

- Laravel authentication with Password or OTP or both and highly configurable

Sample
------

[](#sample)

- Source: [NovelAuth sample with multiple guard](https://github.com/hos3ein/novel-auth-sample)
- Demo: [http://novel-auth.herokuapp.com/](http://novel-auth.herokuapp.com)

Install
-------

[](#install)

```
composer require hos3ein/novel-auth
```

```
php artisan vendor:publish --provider="Hos3ein\NovelAuth\NovelAuthServiceProvider"
```

```
php artisan migrate
```

The Novel Auth Service Provider
-------------------------------

[](#the-novel-auth-service-provider)

The `vendor:publish` command discussed above will also publish the `App\Providers\NovelAuthServiceProvider` class. You should ensure this class is registered within the `providers` array of your application's `config/app.php` configuration file.

```
'providers' => [
    // ...
    App\Providers\NovelAuthServiceProvider::class
]
```

Add `HasOtpCodes` and `NovelAuthAuthenticatable` to your eloquent model

```
class User extends Authenticatable
{
    use HasOtpCodes, NovelAuthAuthenticatable;
    ...
}
```

Final step
----------

[](#final-step)

Implement methods in `App\Actions\NovelAuth\OtpManager.php` in order to do how to send SMS or make a Call and others.

License
-------

[](#license)

The Novel-Auth is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

1235d ago

### Community

Maintainers

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

---

Top Contributors

[![hos3ein](https://avatars.githubusercontent.com/u/6175800?v=4)](https://github.com/hos3ein "hos3ein (52 commits)")

---

Tags

authenticationlaravelotpphplaravelotpauth

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/hos3ein-novel-auth/health.svg)

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

###  Alternatives

[rickycezar/laravel-jwt-impersonate

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

24117.6k](/packages/rickycezar-laravel-jwt-impersonate)[lakm/nopass

Provides passwordless authentication for your laravel projects.

2213.6k2](/packages/lakm-nopass)

PHPackages © 2026

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