Introduction | laravel-passkeys | Spatie

 SPATIE

  Laravel Passkeys
===================

spatie.be/open-source

  [Docs](https://spatie.be/docs)  [Laravel-passkeys](https://spatie.be/docs/laravel-passkeys/v1)  Introduction

 Version   v1

 Other versions for crawler [v1](https://spatie.be/docs/laravel-passkeys/v1)

- [ Introduction ](https://spatie.be/docs/laravel-passkeys/v1/introduction)
- [ Support us ](https://spatie.be/docs/laravel-passkeys/v1/support-us)
- [ Requirements ](https://spatie.be/docs/laravel-passkeys/v1/requirements)
- [ Installation &amp; setup ](https://spatie.be/docs/laravel-passkeys/v1/installation-setup)
- [ Questions and issues ](https://spatie.be/docs/laravel-passkeys/v1/questions-issues)
- [ Changelog ](https://spatie.be/docs/laravel-passkeys/v1/changelog)
- [ About us ](https://spatie.be/docs/laravel-passkeys/v1/about-us)

Basic usage
-----------

- [ How passkeys work ](https://spatie.be/docs/laravel-passkeys/v1/basic-usage/how-passkeys-work)
- [ Generating passkeys ](https://spatie.be/docs/laravel-passkeys/v1/basic-usage/generating-passkeys)
- [ Authentication using passkeys ](https://spatie.be/docs/laravel-passkeys/v1/basic-usage/authenticating-using-passkeys)
- [ Styling the components ](https://spatie.be/docs/laravel-passkeys/v1/basic-usage/styling-the-components)
- [ Usage in Inertia ](https://spatie.be/docs/laravel-passkeys/v1/basic-usage/usage-in-inertia)

Advanced usage
--------------

- [ Using a custom passkey model ](https://spatie.be/docs/laravel-passkeys/v1/advanced-usage/using-a-custom-passkey-model)
- [ Customizing behaviour ](https://spatie.be/docs/laravel-passkeys/v1/advanced-usage/customizing-behaviour)
- [ Listening for events ](https://spatie.be/docs/laravel-passkeys/v1/advanced-usage/listening-for-events)

 Laravel Passkeys
==================

Use passkeys in your Laravel app
--------------------------------

 Passkeys allow passwordless login by generating a secure key stored in apps like 1Password, MacOS' password manager, or others on your preferred OS. This package provides a simple way to generate passkeys and authenticate users using passkeys with a Livewire or Blade component.

 [    Repository ](https://github.com/spatie/laravel-passkeys)

    537,253

    444

Introduction
------------

###  On this page

1. [ Passkeys in action ](#content-passkeys-in-action)
2. [ Demo application ](#content-demo-application)
3. [ Learning more ](#content-learning-more)

This package provides a simple way to generate passkeys using a Livewire component. It also contains a Blade component that can authenticate your users using passkeys.

Passkeys in action
--------------------------------------------------------------------------------------------------------------

Passkeys let you log in without needing a password. Instead of a password, you can generate a passkey which will be stored in 1Pass, MacOS' password app, or alternative app on your favourite OS.

Here's how it looks like when creating a passkey on [Mailcoach](https://mailcoach.app), which uses spatie/laravel-passkeys under the hood.

  Your browser does not support the video tag. And here's what logging in on Mailcoach using a passkeys looks like. Note that your don't have to type in your email address or password. You just need to click the "Log in with passkey" and let 1Pass (or alternative app) do the rest.

  Your browser does not support the video tag. Demo application
--------------------------------------------------------------------------------------------------------

We've provided [a demo application](https://github.com/spatie/laravel-passkeys-app) that uses this package to log in users using passkeys.

Learning more
-----------------------------------------------------------------------------------------------

You can learn more about how passkeys work [here](https://www.dashlane.com/blog/what-is-a-passkey-and-how-does-it-work). There's also this wonderful course on Laracasts about [how to implement passkeys in Laravel](https://laracasts.com/series/add-passkeys-to-a-laravel-app).
