Laravel Authentication is very easy to apply inside of a project. We need an authentication system for keeping our application more secure and private. Making authentication in Laravel is quite easy. It has a built-in solution for authentication and various facility to customize it according to our requirements. If you are new to Laravel 8 then in this post I’ll show you the step-by-step process for making an authentication system in Laravel 8. Let’s follow the step-by-step process for making an authentication system in Laravel 8.
Some Steps for Laravel 8 authentication
- Create a Laravel 8 project
- Install the Laravel UI package
- Generate auth scaffolding
- Install NPM dependencies
- Test the authentication system
- Restrict the required routes
- Change the necessary configuration
Create a Laravel 8 project
First, we have to create a Laravel 8 project. If you already installed Laravel 8 then skip this step and look forward.
composer create-project laravel/laravel laravel8
Install the Laravel UI package
Install the Laravel UI official package for making auth scaffolding in Laravel 8. Run the composer command to install the Laravel UI package.
composer require laravel/ui
Generate AUTH scaffolding With Bootstrap
After installation of the Laravel UI package. We are now able to scaffold our AUTH with Bootstrap, VUE, React, etc. If we want to generate a scaffold with Bootstrap then we have to run the command like below.
php artisan ui bootstrap --auth
OR
After installation of the Laravel UI package. We are now able to scaffold our auth with Bootstrap, Vue, React, etc. If we want to generate a scaffold with Vue then we have to run the command like below.
Generate AUTH scaffolding With VUE JS Wih
php artisan ui vue --auth
Install NPM dependencies
In this step, we have to install all our NPM dependencies. To install NPM dependencies run the command given below.
npm install && npm run dev
To compile assets run the command npm run dev
npm run watch 
Test the authentication system
Now our Laravel 8 auth system is ready to use. To check authentication is successfully installed or not. Please browse the links given below.
To Login Check
example.com/login
To Register Check
example.com/register
Disable Registration System
If you want to disable the new user registration system. Then go to the web.php route file and change the auth route.
Auth::routes(['register' => false]);
Route restriction
After successful installation of Laravel 8 auth system. We can protect our routes for unauthenticated users by using auth middleware in our routes or controller.
Route::get('dashboard', 'App\Http\Controllers\UserController@dashboard')->middleware('auth');
or we can protect it by our controller in the constructor function.
<?php class UserController extends Controller { public function __construct() { $this->middleware('auth'); } public function dashboard(){ // } ... }
To check user authenticated or not in the view or anywhere in the controller we can use auth()->check()
if(auth()->check()){ // If the user only authenticated }
To get current authenticated user data.
$user = auth()->user();
Change the necessary configuration
Laravel Redirect path customization
When a user successfully login the default auth system redirects the user to /home path. If we want to change the path we have to change public const HOME = ‘/home’; from the RouteServiceProvider
public const HOME = '/dashboard';
Laravel Username customization
Laravel auth system by default checks user email. If we want to check username instead of checking email then we have to add this method into the login controller.
// app/Http/Controllers/Auth/LoginController.php public function username() { return 'username'; }
Hope this step-by-step tutorial for Laravel 8 authentication will help you to make your own Laravel 8 authentication system. If this tutorial post helps you then please share this tutorial with others.
Is this snippet still work? if not working the latest version fo laravel just let us know in the comment then we will update the process with laravel version of Laravel.
Please contact with us for need any help Contact Us
Hi, My name is Shamim. I am a freelance PHP developer in Bangladesh. I have been working as a freelance developer since 2014. I am a passionate and creative web development person. As a senior level, I focus on your requirements in detail and deliver high-quality work on your budget.
Wonderful Post….
Awesome blog! Is your theme custom made or did you download it from somewhere? A theme like yours with a few simple adjustements would really make my blog stand out. Please let me know where you got your theme. Cheers
Thank you for asking. it has been made custom. if you want to make this type theme then try to contact with us.
I was able to find good information from your blog articles.