Dalam mengelola sebuah bisnis kuliner yang modern, sistem administrasi yang rapi adalah kunci utama untuk menjaga kelancaran operasional.
Melalui artikel ini, kita akan belajar langkah demi langkah membangun fitur Admin Login menggunakan Laravel 12 dan Blade, yang dirancang khusus untuk proyek Web Rumah Makan.
Fokus utama kita adalah menciptakan gerbang masuk yang aman dan efisien, sehingga manajemen menu hingga laporan penjualan dapat dikelola dengan kendali penuh di tangan admin.
1. Buat Proyek Laravel Baru
laravel new rumah-makan-bwa-tegar
Perintah “laravel new rumah-makan-bwa-tegar” digunakan untuk membuat sebuah proyek Laravel baru dengan nama tersebut sehingga kita memiliki struktur aplikasi yang siap dipakai untuk melanjutkan proses pembuatan fitur Laravel Login.
Pilih sebagai berikut

Setelah menunggu lama lanjut pilih sebagai berikut

Atau kalau gagal pakai pembuatan Laravel di atas, bisa pakai Composer bila cara di atas tidak berhasil:
composer create-project laravel/laravel rumah-makan-bwa-tegar
Perintah “composer create-project laravel/laravel rumah-makan-bwa-tegar” digunakan untuk membuat proyek Laravel baru menggunakan Composer, sehingga seluruh file dan dependensi Laravel terunduh otomatis dan siap digunakan sebagai dasar pengembangan fitur Laravel Login.
Selanjutnya mulai masuk ke foldernya:
cd rumah-makan-bwa-tegar/
code .
Hasil

Selanjutnya jalankan migrasi:
Selanjutnya buka terminal proyek kamu dan jalankan perintah ini
php artisan migrate
# Would you like to create it? (yes/no) [yes] Pilih Yes
Perintah “php artisan migrate” dijalankan untuk membuat seluruh tabel yang sudah didefinisikan dalam file migration agar database siap digunakan dalam proyek Laravel Login ini.
🚨 Sebelum migrasi pastikan database/PhpMyAdmin kalian sudah aktif atau bisa di akses ya.

Hasil

Selanjutnya jalankan server:
Selanjutnya jalankan perintah ini
php artisan serve
# Lalu akses [<http://127.0.0.1:8000>]
Perintah “php artisan serve” digunakan untuk menjalankan server pengembangan Laravel sehingga aplikasi bisa langsung diakses melalui browser dan siap diuji selama proses pembuatan fitur Laravel Login.
Hasil

2. Siapkan Database
Pada tahap ini, kita mulai menyiapkan database yang akan menjadi tempat penyimpanan data sehingga proses Laravel Login dapat berjalan dengan baik dan terstruktur.
Buka file .env di proyek kamu, lalu sesuaikan bagian ini saja:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=rumah_makan_bwa_tegar
DB_USERNAME=root
DB_PASSWORD=
Konfigurasi DB_CONNECTION hingga DB_PASSWORD tersebut digunakan untuk menghubungkan proyek Laravel ke database MySQL lokal sehingga aplikasi bisa menyimpan, membaca, dan menampilkan data yang nantinya akan Laravel Login.
Hasil

3. Install Breeze (Auth Blade)
Selanjutnya kita jalankan perintah Laravel Breeze (Blade). Seperti ini di terminal kalian.
composer require laravel/breeze --dev
Hasil

Selanjutnya disusul jalankan ini
php artisan breeze:install blade
Hasil

Selanjutnya kita perlu menampilkan halamannya dengan menjalankan perintah install frontend:
npm install
npm run build
Dilanjut dengan migrasi database:
php artisan migrate:fresh
Hasil

4. Jalankan Project
Selanjutnya jalankan proyeknya dan kalian akan melihat perbedaan di pojok kanan atas halaman utama laravel proyek kalian.
php artisan serve
# Lalu akses [<http://127.0.0.1:8000>]
Hasil

Sekarang otomatis punya:
/login/register/dashboard
5. Batasi Jadi HANYA 2 Halaman (Karena Admin Tidak Perlu Register)
Untuk menjaga integritas sistem manajemen rumah makan kita, sangat penting untuk membatasi akses publik dengan cara menonaktifkan fitur registrasi.
Mengingat akses admin bersifat eksklusif, kita akan menyederhanakan alur autentikasi sehingga sistem hanya memiliki dua halaman utama: Login dan Dashboard.
Dengan langkah ini, tidak sembarang orang dapat mendaftarkan diri, dan pintu masuk ke area sensitif benar-benar terjaga dengan ketat.
A. Hapus route register
Edit routes/auth.php:
// HAPUS atau COMMENT route register
Hasil

Hasil Browser

6. Buat Admin User (Seeder)
Karena fitur registrasi telah kita nonaktifkan demi keamanan, kita memerlukan cara alternatif untuk memasukkan data administrator pertama kali ke dalam sistem melalui Database Seeder.
Dengan memanfaatkan fitur ini, kita dapat "menanamkan" akun admin secara otomatis ke dalam database dengan kredensial yang sudah ditentukan, sehingga sistem siap digunakan segera setelah proses instalasi selesai tanpa perlu mendaftar secara manual.
php artisan make:seeder AdminSeeder
Hasil

L:anjut edit database/seeders/AdminSeeder.php:
useApp\\Models\\User;
useIlluminate\\Support\\Facades\\Hash;
publicfunctionrun():void
{
User::create([
'name' =>'Admin Rumah Makan',
'email' =>'[email protected]',
'password' =>Hash::make('password123'),
]);
}
Hasil

Jalankan perintah ini di terminal proyek kalian:
php artisan db:seed --class=AdminSeeder
Hasil

7. Middleware Auth (Dashboard Aman)
Keamanan adalah prioritas utama dalam sebuah sistem administrasi, dan di Laravel, hal ini dikelola dengan sangat elegan melalui Middleware Auth.
Secara bawaan, setelah kita menginstal starter kit, rute menuju dashboard sudah otomatis terlindungi sehingga hanya pengguna yang telah login yang dapat mengaksesnya.
Untuk memastikannya, silakan buka file routes/web.php dan perhatikan bagaimana Laravel membungkus rute tersebut agar tetap aman dari akses ilegal.
Route::get('/dashboard', function () {
returnview('dashboard');
})->middleware(['auth'])->name('dashboard');
Hasil

➡️ Jika belum login → redirect ke /login
8. Tampilan Login (Latihan Ubah)
Setelah sistem keamanan rute siap, langkah selanjutnya adalah merombak antarmuka agar sesuai dengan tema minimalis proyek rumah makan kita.
Kita akan membersihkan kode bawaan yang kompleks dan menggantinya dengan Tampilan Login Blade yang jauh lebih sederhana dan fokus pada fungsinya. Dan yang pasti untuk latihan kita mengubah-ubah style.
Silakan buka file resources/views/auth/login.blade.php, hapus seluruh isinya, lalu gunakan struktur kode berikut untuk menciptakan formulir login yang bersih dan mudah dipahami.
resources/views/auth/login.blade.php
Ubah Menjadi ini:
<x-guest-layout>
<div class="max-w-md mx-auto mt-20 bg-white p-6 rounded shadow">
<h2 class="text-2xl font-bold mb-4 text-center">
Login Admin Rumah Makan
</h2>
<form method="POST" action="{{ route('login') }}">
@csrf
<div class="mb-4">
<label>Email</label>
<input type="email" name="email" class="w-full border p-2 rounded" required>
</div>
<div class="mb-4">
<label>Password</label>
<input type="password" name="password" class="w-full border p-2 rounded" required>
</div>
<button class="w-full bg-red-600 text-white py-2 rounded">
Login
</button>
</form>
</div>
</x-guest-layout>
Hasil

9. Tampilan Dashboard Admin (Latihan Ubah)
Hapus semuanya yang ada di dalam Dasboard page yaitu:
resources/views/dashboard.blade.php
Ubah Menjadi ini:
<x-app-layout>
<div class="p-6">
<h1 class="text-2xl font-bold">
Dashboard Admin Rumah Makan
</h1>
<p class="mt-2">
Selamat datang, {{ auth()->user()->name }}
</p>
<form method="POST" action="{{ route('logout') }}">
@csrf
<button class="mt-4 bg-gray-800 text-white px-4 py-2 rounded">
Logout
</button>
</form>
</div>
</x-app-layout>
Hasil

10. Akun Login
Setelah seluruh sistem dan tampilan siap, langkah terakhir sebelum melakukan pengujian adalah mengetahui detail kredensial yang akan digunakan untuk masuk.
Berikut adalah Akun Login yang telah kita persiapkan melalui proses seeding sebelumnya, yang nantinya akan kalian masukkan pada formulir login untuk mengakses panel administrasi rumah makan.
Email :[email protected]
Password :password123
11. Uji Coba Langsung
Kini tiba saatnya kita melihat hasil kerja keras kita beraksi melalui tahap Uji Coba Langsung.
Pada tahap ini, kita akan mensimulasikan proses masuknya seorang admin ke dalam sistem, mulai dari pengisian formulir hingga memastikan bahwa rute keamanan bekerja dengan sempurna dan mengantarkan kita ke halaman utama manajemen rumah makan.

12. Alur Login (Ringkas)
Memahami proses autentikasi akan menjadi jauh lebih mudah jika kita melihatnya sebagai sebuah siklus yang terstruktur.
Berikut adalah gambaran sederhana mengenai bagaimana sebuah permintaan dimulai dari halaman login, diproses secara aman oleh sistem sesi Laravel, hingga akhirnya pengguna keluar dari sistem dan kembali ke titik awal.
/login → submit
↓
Auth Laravel (session)
↓
/dashboard
↓
Logout → /login
✅ SELESAI
Sekarang kamu sudah punya:
✔ Laravel 12
✔ Login Blade
✔ Dashboard Admin
✔ Auth Aman (session)
✔ Cocok untuk Web Rumah Makan
13. Rekomendasi Kelas BuildWithAngga

Jika kamu merasa materi di artikel ini sudah sangat membantu, bayangkan betapa pesatnya perkembangan skill kamu jika mempelajari proyek yang jauh lebih kompleks dan profesional!
Kami sangat merekomendasikan kamu untuk segera bergabung dalam kelas "Ebook Laravel 12 & SC React: Web Hospital & Doctor Appointment", di mana kamu akan belajar Laravel 12 secara mendalam dengan praktik langsung membangun backend API profesional menggunakan service-repository pattern, Sanctum middleware, hingga Spatie roles & permissions.
Tidak hanya itu, kamu akan mendapatkan source code frontend React TypeScript siap pakai yang terintegrasi langsung dengan Laravel, sehingga sangat cocok untuk dijadikan portofolio kerja atau bahkan langsung dijual ulang ke klien sebagai fondasi produk digital milikmu sendiri.
Kelas ini adalah yang terbaik bagi kamu yang suka belajar dengan cara menggali seluk-beluk masalah secara luas melalui teks dan ingin memiliki kontrol penuh atas kecepatan praktik tanpa harus menonton durasi video yang panjang.
Kamu akan mengerjakan proyek real-world sistem manajemen rumah sakit lengkap, mulai dari fitur CRUD, jadwal dokter, hingga sistem booking appointment yang sangat rapi dan berkualitas.
Ini adalah investasi paling berharga untuk menjadi developer ahli, jadi segera amankan aksesmu melalui tautan berikut: https://buildwithangga.com/kelas/ebook-laravel-12-sc-reactweb-hospital-doctor-appointment