PHPackages                             lakm/nopass - 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. lakm/nopass

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

lakm/nopass
===========

Provides passwordless authentication for your laravel projects.

1.0.4(1y ago)2213.6k↓43.9%11MITPHPPHP ^8.1CI passing

Since Sep 20Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/Lakshan-Madushanka/nopass)[ Packagist](https://packagist.org/packages/lakm/nopass)[ RSS](/packages/lakm-nopass/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (5)Dependencies (6)Versions (6)Used By (1)

**[Overview](#overview)** | **[How it works](#how-it-works)** | **[Verification link](#verification-link)** | **[OTP code](#otp-code)** | **[Usage examples](#usage-examples)** | **[Changelog](#changelog)** | **[Testing](#testing)** | **[Security](#security)** | **[License](#license)**

[![](https://private-user-images.githubusercontent.com/47297673/365123544-1684696e-0dc0-4cda-ae00-6dcd77bc36c6.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNDQwNzIsIm5iZiI6MTc3NTM0Mzc3MiwicGF0aCI6Ii80NzI5NzY3My8zNjUxMjM1NDQtMTY4NDY5NmUtMGRjMC00Y2RhLWFlMDAtNmRjZDc3YmMzNmM2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA0VDIzMDI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTUzYTA1ZDc4MjQ1ZjQwOWQyOGMwNGRjNzY3YzFmYWM0YWQ4MmI4ZDg4MDM5NjFhZGIzYzJmYzBiYjJlN2Y1M2ImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.bGBjYS6sfFSqOJmU0qRIK1y3Xu0uUtgqoS35mOgBZ-w)](https://private-user-images.githubusercontent.com/47297673/365123544-1684696e-0dc0-4cda-ae00-6dcd77bc36c6.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNDQwNzIsIm5iZiI6MTc3NTM0Mzc3MiwicGF0aCI6Ii80NzI5NzY3My8zNjUxMjM1NDQtMTY4NDY5NmUtMGRjMC00Y2RhLWFlMDAtNmRjZDc3YmMzNmM2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA0VDIzMDI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTUzYTA1ZDc4MjQ1ZjQwOWQyOGMwNGRjNzY3YzFmYWM0YWQ4MmI4ZDg4MDM5NjFhZGIzYzJmYzBiYjJlN2Y1M2ImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.bGBjYS6sfFSqOJmU0qRIK1y3Xu0uUtgqoS35mOgBZ-w)
=============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#)

**Passwords are no longer secure!**

[![Laravel](https://camo.githubusercontent.com/3020a5644b41b0a6e42c716ae0486d76e1af9fdfb5ccbce77edf26d8c4e0554e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c61726176656c2d25354531302e3025323025374325323025354531312e302d726564)](https://laravel.com)[![GitHub Actions Workflow Status](https://camo.githubusercontent.com/f54f872e44065b99395934a0c5cad125a3a5294eb58d88402d30c9f5fd148004/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4c616b7368616e2d4d6164757368616e6b612f6e6f706173732f72756e2d74657374732e796d6c)](https://github.com/Lakshan-Madushanka/nopass/actions?query=workflow%3ATests+branch%3Amain)[![Packagist Version](https://camo.githubusercontent.com/77cef75d24dc560ed00586d779ae458fe0f7b4000527d221c394424a7b2e71da/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6c616b6d2f6e6f70617373)](https://packagist.org/packages/lakm/nopass)[![Downloads](https://camo.githubusercontent.com/bcfc9265d723ba2bb8c4b23a39e999eac6abd70d91e2ced3776cc66a358e52ad/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c616b6d2f6e6f70617373)](https://packagist.org/packages/lakm/nopass)[![GitHub License](https://camo.githubusercontent.com/09ad58a013ff815ae5f58a345629c38c574cacf2a805d63eb23c1493264615a9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4c616b7368616e2d4d6164757368616e6b612f6c61726176656c2d636f6d6d656e7473)](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/LICENSE.md)

Overview
--------

[](#overview)

"I'm so fed up with passwords! I have to reset them all the time."

"Oh no, my passwords were leaked. I bet it's my password manager's fault."

"Someone accessed my account—I think they guessed my weak password."

We've all encountered one of these issues at some point. As the internet has evolved, there are now websites for almost everything we need. Modern users often have more than five accounts online.

How many online accounts do you have? The answer is likely more than one—probably more than 10. So, how do you manage to remember the passwords for each of these accounts? Here are a few options you might consider:

- Memorize them.
- Use a password manager.
- Reset your password every time you forget it. 😂

We can easily rule out the first option since most of us aren't blessed with a superhuman memory. While password managers are a popular choice, their security isn't foolproof—data breaches and password leaks happen far too often, making them a less-than-reliable option.

That is the users' side of story. It's our responsibility to provide more convenience authentication methods for our users and improve user experiences. That is what this package made for.

> !Note The package doesn't provide any authentication method. Instead, it provides two methods to use in your existing auth system. You can use any authentication like breeze, jetstream or custom one. Sample implementation has been provided in demo project

How it works
------------

[](#how-it-works)

The package offers two methods for verification: sending a verification link to the user's email address or sending an OTP (One-Time Password) to the user's mobile number.

Verification link
-----------------

[](#verification-link)

### Generate a link

[](#generate-a-link)

```
    use LakM\NoPass\Facades\NoPass;

    $data = [];

    $link = NoPass::for($user)
        ->email()
        ->routeName('login-link')
        ->generate($data); // Data are attached to query string
```

OTP Code
--------

[](#otp-code)

### Generate a OTP code

[](#generate-a-otp-code)

```
    use LakM\NoPass\Facades\NoPass;

    $link = NoPass::for($user)
        ->otp()
        ->generate();
```

Check validity
--------------

[](#check-validity)

### Check Email

[](#check-email)

```
    use LakM\NoPass\Facades\NoPass;

    $isValid = NoPass::for($user)
            ->isValid();
```

### Check OTP

[](#check-otp)

```
    use LakM\NoPass\Facades\NoPass;

    $isValid = NoPass::for($user)
            ->isValid($otp);
```

Invalidate
----------

[](#invalidate)

```
    use LakM\NoPass\Facades\NoPass;

    $isValid = NoPass::for($user)
            ->inValidate();
```

Usage Examples
--------------

[](#usage-examples)

- [Send login link](https://github.com/Lakshan-Madushanka/laravel-comments/blob/9f1c325caa877dc804335e436abba9f5e9450bf7/src/SecureGuestModeManager.php#L47)
- [Authenticate link](https://github.com/Lakshan-Madushanka/laravel-comments/blob/9f1c325caa877dc804335e436abba9f5e9450bf7/src/Actions/VerifyGuestAction.php#L16)

Changelog
---------

[](#changelog)

Please see [CHANGELOG](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/CHANGELOG.md) for more information what has changed recently.

Testing
-------

[](#testing)

```
./vendor/bin/pest
```

Security
--------

[](#security)

Please see [here](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/SECURITY.md) for our security policy.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](https://github.com/Lakshan-Madushanka/laravel-comments/blob/main/LICENSE.md) for more information.

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance48

Moderate activity, may be stable

Popularity35

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.5% 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 ~40 days

Total

5

Last Release

445d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/88cfad5d6377be18e9544dc9796e4dd2979faeff1984ad105f83bc979ac25c0f?d=identicon)[Lakshan-Madushanka](/maintainers/Lakshan-Madushanka)

---

Top Contributors

[![Lakshan-Madushanka](https://avatars.githubusercontent.com/u/47297673?v=4)](https://github.com/Lakshan-Madushanka "Lakshan-Madushanka (21 commits)")[![viktorruskai](https://avatars.githubusercontent.com/u/9396295?v=4)](https://github.com/viktorruskai "viktorruskai (1 commits)")

---

Tags

laravelotpauthAuthenticationemailPasswordless

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/lakm-nopass/health.svg)

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

###  Alternatives

[ellaisys/aws-cognito

AWS Cognito package that allows Auth and other related features using the AWS SDK for PHP

120220.7k1](/packages/ellaisys-aws-cognito)

PHPackages © 2026

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