Pluginify

Masuk Daftar
Home > Blog > Laravel > Mengenal Auth Dasar Laravel dengan Laravel UI dan Breeze

Mengenal Auth Dasar Laravel dengan Laravel UI dan Breeze

Mengenal Auth Dasar Laravel dengan Laravel UI dan Breeze

Autentikasi adalah proses verifikasi identitas pengguna sebelum mengakses bagian tertentu dari aplikasi. Laravel menyediakan sistem authentication yang lengkap dan fleksibel untuk menangani fitur seperti:

  • Registrasi pengguna
  • Login dan Logout
  • Proteksi halaman
  • Reset password (opsional)
  • Verifikasi email (opsional)

Untuk mempermudah implementasi autentikasi dasar, Laravel menyediakan paket scaffolding seperti Laravel UI dan Laravel Breeze.


Perbedaan Laravel UI vs Laravel Breeze

Berikut ringkasnya:

FiturLaravel UILaravel BreezeSDKDashboard UI klasikTailwind CSS + BladeFrontendBootstrap / Vue / ReactTailwind (Blade/React/Vue/Inertia)Cocok untukProject tradisionalProject modernInstalasiEksternalEksternalTersedia reset passwordYaYa

Laravel UI lebih cocok untuk kebutuhan klasik berbasis Bootstrap, sedangkan Breeze lebih modern dan ringan.


1. Autentikasi Menggunakan Laravel UI

Instalasi Laravel UI

Jalankan perintah berikut:

composer require laravel/ui

Generate UI Auth

Gunakan Bootstrap:

php artisan ui bootstrap --auth

Kemudian install dependencies frontend:

npm install && npm run dev

Migrasi database

Pastikan database sudah terkoneksi di .env, lalu jalankan:

php artisan migrate

Hasil

Paket Laravel UI akan menyediakan:

  • Halaman login
  • Halaman register
  • Middleware auth
  • Controller login/register
  • View Blade berbasis Bootstrap

Cocok untuk aplikasi panel admin tradisional.


2. Autentikasi Menggunakan Laravel Breeze

Laravel Breeze lebih ringan dan simple dengan Tailwind CSS.

Instalasi Laravel Breeze

composer require laravel/breeze --dev

Generate Scaffolding

Gunakan Blade (paling sederhana):

php artisan breeze:install

Tersedia juga opsi:

  • React
  • Vue
  • API (tanpa view)

Contoh React:

php artisan breeze:install react

Install dependencies frontend

npm install
npm run dev

Migrasi database

php artisan migrate

Hasil

Laravel Breeze menyediakan fitur:

✔ Login

✔ Register

✔ Reset Password

✔ Email Verification

✔ Logout

Dengan tampilan clean menggunakan Tailwind CSS.


Proteksi Halaman dengan Auth Middleware

Laravel menyediakan auth middleware untuk membatasi akses.

Contoh route:

Route::get('/dashboard', function () {
    return view('dashboard');
})->middleware('auth');

Jika user belum login, maka akan diarahkan ke halaman login.


Redirect Setelah Login

Secara default, Breeze mengarah ke /dashboard

Jika ingin mengubah, buka file:

app/Providers/RouteServiceProvider.php

Ubah:

public const HOME = '/profile';

Logout Pengguna

Laravel sudah menyediakan route logout sebagai POST:

<form action="/logout" method="POST">
    @csrf
    <button type="submit">Logout</button>
</form>

Contoh Login Manual Menggunakan Auth Facade

Di Controller:

use IlluminateSupportFacadesAuth;

public function login(Request $request)
{
    $credentials = $request->only('email', 'password');

    if (Auth::attempt($credentials)) {
        $request->session()->regenerate();
        return redirect()->intended('/dashboard');
    }

    return back()->withErrors([
        'email' => 'Email atau password salah.',
    ]);
}

Validasi Register Sederhana

$request->validate([
    'name'     => 'required|string|max:50',
    'email'    => 'required|email|unique:users,email',
    'password' => 'required|min:6|confirmed'
]);

Field password_confirmation wajib ada jika memakai rule confirmed.


Keuntungan Menggunakan Auth Dasar Laravel

Beberapa kelebihannya yaitu:

  • Proses setup cepat
  • Sudah termasuk middleware proteksi
  • Dukungan email verification dan reset password
  • Integrasi session dan CSRF protection
  • Kompatibel dengan API melalui Laravel Sanctum

Kesimpulan

Laravel menyediakan mekanisme autentikasi dasar yang powerful melalui paket Laravel UI dan Breeze. Kedua paket ini mempercepat proses setup login, register, dan proteksi halaman aplikasi tanpa perlu menulis kode autentikasi dari awal.

  • Laravel UI cocok untuk aplikasi berbasis Bootstrap
  • Laravel Breeze cocok untuk aplikasi modern berbasis Tailwind

Dengan memahami konsep autentikasi dasar, developer dapat membangun sistem login yang aman, efisien, dan mudah diintegrasikan ke fitur selanjutnya.

Yuk lanjut baca juga: Middleware Laravel dan Penggunaannya dalam Mengelola Akses

Pluginify
Pluginify