Tutorial step-by-step ini menjelaskan cara menginstal Laravel 11 terbaru, mengintegrasikan Vite untuk frontend, serta menambahkan Breeze, Sanctum, dan Jetstream untuk otentikasi dan API yang aman.
1. Persyaratan Sistem
- PHP >= 8.3
- Composer 2.x
- Node.js >= 20 (untuk Vite)
- Database MySQL/PostgreSQL/SQLite
2. Instalasi Laravel 11
composer create-project laravel/laravel example-app "11.*"
Masuk ke direktori proyek:
cd example-app
Penjelasan
Perintah di atas mengunduh skeleton Laravel 11 terbaru dengan semua dependensi dasar.
3. Mengatur Vite (Asset Bundler)
- Install dependensi npm:
npm install
- Pastikan file
vite.config.jssudah tersedia (disertakan secara default pada Laravel 11). Jika tidak, buat dengan:
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [laravel(['resources/css/app.css', 'resources/js/app.js'])],
});
- Jalankan dev server:
npm run dev
Best Practice
Gunakan npm run build untuk produksi, dan aktifkan hot hanya pada lingkungan development.
4. Menambahkan Laravel Breeze (Starter Kit UI)
composer require laravel/breeze --dev
php artisan breeze:install
Perintah di atas meng‑install Blade‑based authentication scaffold.
Opsional: Vite + React/Vue
Jika ingin stack JavaScript modern, gunakan:
php artisan breeze:install vue
# atau
php artisan breeze:install react
5. Setup Laravel Sanctum (API Token & SPA Authentication)
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware di app/Http/Kernel.php:
'api' => [\Illuminate\Routing\Middleware\SubstituteBindings::class, \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class],
Konfigurasi config/sanctum.php jika menggunakan SPA: set stateful domain.
Contoh Penggunaan Token
// pada controller
use Laravel\Sanctum\HasApiTokens;
$user = User::find(1);
$token = $user->createToken('mobile-app')->plainTextToken;
return response()->json(['token' => $token]);
6. Menambahkan Laravel Jetstream (Advanced Scaffolding)
Jika proyek memerlukan tim, profil, dan 2FA, instal Jetstream:
composer require laravel/jetstream
php artisan jetstream:install livewire
# atau
php artisan jetstream:install inertia
Jalankan migrasi lagi:
php artisan migrate
Best Practice Jetstream
- Gunakan
livewireuntuk aplikasi Blade‑centric atauinertiauntuk SPA React/Vue. - Aktifkan fitur
teamshanya bila dibutuhkan untuk mengurangi tabel ekstra.
7. Konfigurasi Environment
APP_NAME="ExampleApp"
APP_ENV=local
APP_KEY=$(php artisan key:generate --show)
APP_DEBUG=true
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=example_db
DB_USERNAME=root
DB_PASSWORD=
SANCTUM_STATEFUL_DOMAINS=localhost
SESSION_DOMAIN=localhost
8. Menjalankan Aplikasi
php artisan servenpm run dev
Kunjungi http://localhost:8000 dan Anda akan melihat halaman welcome dengan link login/register yang telah disediakan Breeze/Jetstream.
9. Checklist Best Practice
- Gunakan
php artisan config:cachedanphp artisan route:cachedi production. - Set
APP_DEBUG=falsedanAPP_ENV=production. - Pastikan
APP_KEYtidak kosong. - Gunakan
HTTPSdan setSESSION_SECURE_COOKIE=truesertaSanctum::useCookieEncryption()bila diperlukan. - Audit dependensi npm dengan
npm auditsecara rutin.
Dengan mengikuti langkah‑langkah di atas, Anda memiliki foundation Laravel 11 yang modern, terintegrasi dengan Vite, Breeze atau Jetstream, serta aman menggunakan Sanctum. Setup ini mematuhi best practice Laravel 2026, memudahkan skalabilitas, dan siap untuk pengembangan fitur lanjutan.
Tutorial lengkap setup Laravel 11 dengan Vite, Breeze, Sanctum, dan Jetstream. Ikuti langkah‐step modern, konfigurasi terbaik, dan contoh kode untuk proyek PHP Framework terbaru.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar