Download the PHP package r0073rr0r/laravel-webauthn without Composer

On this page you can find all versions of the php package r0073rr0r/laravel-webauthn. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-webauthn

Laravel – Jetstream Livewire WebAuthn Components

Packagist Version Total Downloads Monthly Downloads PHP Version License GitHub Stars GitHub Issues GitHub Forks Tests CodeQL PHP Composer

A Laravel package that integrates seamlessly with Jetstream and Livewire to provide WebAuthn authentication — including support for biometric login, USB security keys, and passkeys.

📑 Table of Contents

📋 Requirements

📦 Installation

Install the package via Composer:

If you encounter dependency errors, run:

Note: "web-auth/webauthn-framework": "^5.2" requires brick/math ^0.13, while newer Jetstream requires brick/math ^0.14. An update to version 5.3 is expected soon, which will resolve this issue, but the tag has not been created yet and the composer constraint cannot be changed.

Publish views and config files:

Publish all package resources (views, translations, and public assets) with a single command:

This will also copy the translation files to your lang/vendor/webauthn directory, where you can customize them.

Migrate database tables:

Note: The migration is safe to run even if the webauthn_keys table already exists. It will check if the table exists before creating it, and will add a unique constraint on credentialId if it doesn't already exist.

asciicast installation of package

🔄 Updating

When updating the package to a new version, you should republish the configuration and translation files to ensure you have the latest changes:

The --force flag will overwrite existing files with the latest versions from the package, ensuring you have all new configuration options and translations.

Important: After updating, review the config/webauthn.php file for any new configuration options that may have been added.

⚙️ Setup

After publishing the assets, include the WebAuthn JavaScript file in your layout (e.g., in resources/views/layouts/app.blade.php & resources/views/layouts/guest.blade.php or wherever you have your main layout):

This script is required for the WebAuthn components to work properly.

🚀 Usage

Registration (WebAuthnRegister)

Add the component to your Blade view (I added it in resources/views/profile/show.blade.php):

Register

This component allows users to register their WebAuthn device (fingerprint, Face ID, USB security key, etc.).

Login (WebAuthnLogin)

Add the component to your Blade view (I added it in resources/views/auth/login.blade.php after login form):

Login

This component allows users to log in using their previously registered WebAuthn device.

⚙️ Configuration

The package configuration file is located at config/webauthn.php. After publishing, you can customize the following options:

Basic Configuration

Supported Algorithms

You can configure which cryptographic algorithms are allowed:

Rate Limiting

Protect against brute force attacks with configurable rate limiting:

Timeout Configuration

Configure the timeout for WebAuthn operations (in milliseconds):

Device Name Validation

Set minimum and maximum length for device names:

Audit Logging

Enable audit logging for security monitoring:

Log Channel Options:

Note: The 'daily' channel does NOT send emails. It only writes to log files. If you need email notifications, configure a custom log channel in config/logging.php that uses a mail driver.

Email Notifications for Audit Logs

If you want to receive email notifications for WebAuthn operations, you can configure a custom log channel with email support:

Step 1: Add a custom channel in config/logging.php:

Step 2: Configure the email channel in your .env:

Step 3: Make sure your Laravel mail configuration is set up correctly in .env:

Alternative: For more advanced email notifications (e.g., only on errors, formatted emails), you can create a custom channel with Slack, Discord, or other notification services:

Audit logs include:

Example log entry:

Environment Variables

You can configure all options via environment variables in your .env file:

🎨 Customization

You can customize the view files after publishing them:

🔒 Security

WebAuthn is a modern standard for secure passwordless authentication. This package uses browser native WebAuthn APIs for maximum security.

Security Features

Supported Authenticators

This package supports a wide range of WebAuthn authenticators:

📝 License

MIT License

🤝 Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.


All versions of laravel-webauthn with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
laravel/framework Version ^12.0
livewire/livewire Version ^3.0
laravel/jetstream Version ^5.0
spomky-labs/cbor-php Version ^3.1
web-auth/webauthn-framework Version ^5.2
ext-openssl Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package r0073rr0r/laravel-webauthn contains the following files

Loading the files please wait ...