Laravel Fortify: Implement Authentication Scaffolding In Laravel 8

Razet · · 8295 Views

Since the arrival of Laravel 8 and Jetstream, the package laravel/ui fall in some sort of deprecated status.

The issue with Jetstream is that we simply need the auth scaffolding without the need of Inertia.js or Livewire stacks.

Don't get me wrong, I love working with Inertia or Livewire, yet in some cases, you only need the auth part.

Going back to laravel/ui, it's as yet conceivable to utilize the package on Laravel 8. However, I want to restore that functionality without the referenced package.

In the guide, I'm going to describe steps to have similar behavior using Laravel Fortify.

Project setup

  1. laravel new laravel-fortify-demo

  2. composer require laravel/fortify

  3. php artisan vendor:publish --provider="Laravel\\Fortify\\FortifyServiceProvider"

  4. configure your database

  5. php artisan migrate

Setup Fortify

Open config/app.php and register Fortify service provider:

App\Providers\FortifyServiceProvider::class,

Next, open config/fortify.php and update your features array as follow:

'features' => [
    Features::registration(),
    Features::resetPasswords(),
],

Now we need to tell Fortify where is our auth views.

Open app/Providers/FortifyServiceProvider.php and in the boot method add:

Fortify::loginView(function () {
    return view('auth.login');
});

Fortify::registerView(function () {
    return view('auth.register');
});

Fortify::requestPasswordResetLinkView(function () {
    return view('auth.forgot-password');
});

Fortify::resetPasswordView(function () {
    return view('auth.reset-password');
});

Create the views

We need to create the 4 mentioned blade files:

  1. resources/views/auth/forgot-password.blade.php

  2. resources/views/auth/login.blade.php

  3. resources/views/auth/register.blade.php

  4. resources/views/auth/reset-password.blade.php

I "borrowed" the views from the laravel/ui package; 

Conclusions

This article covers the essential register, login, and password reset functionalities.

Here are some other features of Laravel fortify, 

  1. Forget Password & User Profile Update

  2. Email verification tutorial video tutorial

  3. Two Factor Authentication (2FA)

0

Please login or create new account to add your comment.

0 comments
You may also like:

Laravel Pint & VS Code: Automate Your Code Formatting

Laravel Pint is an opinionated PHP code style fixer built on top of PHP-CS-Fixer, designed to simplify the process of ensuring clean and consistent code style in Laravel projects. (...)
Harish Kumar

Laravel Clockwork: A Deep Dive into Debugging, Profiling Skills and Best Practices

In the world of web development, building complex applications often comes with the challenge of identifying and resolving performance bottlenecks. This is where a reliable debugging (...)
Harish Kumar

Effortless PDF Generation in Laravel: A Guide to Using Spatie/Browsershot Package

Looking to generate or export PDF files using Laravel? Look no further! In this article, we'll guide you through using the Laravel spatie/browsershot package to seamlessly convert (...)
Harish Kumar

Part #3: Rule objects based custom validation in Laravel

Laravel comes with multiple ways to add custom validation rules to validate form request inputs. I have already explained some of the ways in the following article links:
Harish Kumar

Part #2: How to use Laravel's Validator::extend method for custom validation

Validation is important in any application as it validates a form before performing actions on it. It allows the user to know their input is accurate and confident about the operation (...)
Harish Kumar

Part #1: Closure-based Custom Laravel Validation

While I was working with Laravel, validation using closure came to my mind, and I know it will be helpful to you. This tutorial assists you with all what is the difference between (...)
Harish Kumar