Laravel 10 and Fortify

This tutorial assumes you have already set up Bootstrap with Laravel

 

 

add to the boot() method in app/Providers/FortifyServiceProvider.php

/**
     * Bootstrap any application services.
     */
    public function boot(): void
    {
        Fortify::createUsersUsing(CreateNewUser::class);
        Fortify::updateUserProfileInformationUsing(UpdateUserProfileInformation::class);
        Fortify::updateUserPasswordsUsing(UpdateUserPassword::class);
        Fortify::resetUserPasswordsUsing(ResetUserPassword::class);

        RateLimiter::for('login', function (Request $request) {
            $email = (string) $request->email;

            return Limit::perMinute(5)->by($email.$request->ip());
        });

        RateLimiter::for('two-factor', function (Request $request) {
            return Limit::perMinute(5)->by($request->session()->get('login.id'));
        });

        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 ($request) {
            return view('auth.reset-password', ['request' => $request]);
        });
    
        Fortify::verifyEmailView(function () {
            return view('auth.verify-email');
        });

    }
}

add the following to the providers element in config/app.php

 

        Illuminate\View\ViewServiceProvider::class,

        /*
         * Package Service Providers...
         */
        App\Providers\FortifyServiceProvider::class,
        /*
         * Application Service Providers...
         */
        App\Providers\AppServiceProvider::class,

create each of the views you declared in app/Providers/FortifyServiceProvider.php

You will need a 

  • login view
  • register view
  • forgot password
  • reset password
  • verify email (optional)

 

Common Laravel Errors

Target [Laravel\Fortify\Contracts\RegisterViewResponse] is not instantiable.

Target [Laravel\Fortify\Contracts\RegisterViewResponse] is not instantiable.