Ikuti tutorial step‑by‑step ini untuk menginstal Laravel 11 terbaru, mengintegrasikan Vite, Breeze, Sanctum, serta konfigurasi lingkungan produksi yang aman dan optimal.
1. Persiapan Lingkungan
Pastikan server Anda memiliki PHP 8.3, Composer 2.x, dan Node.js 20+. Verifikasi dengan:
php -v
composer -V
node -v
npm -v
1.1 Instalasi Dependensi Sistem
- Ubuntu/Debian:
sudo apt-get install php8.3 php8.3-cli php8.3-mbstring php8.3-xml php8.3-bcmath php8.3-json php8.3-curl unzip - macOS (Homebrew):
brew install [email protected] composer node
2. Membuat Proyek Laravel 11
composer create-project laravel/laravel contoh-app "11.*" --prefer-dist
Masuk ke folder proyek:
cd contoh-app
2.1 Inisialisasi Git (opsional)
git init
git add .
git commit -m "Initial commit - Laravel 11"
3. Mengonfigurasi Vite (Asset Bundler Modern)
Laravel 11 sudah menyertakan Vite secara default. Periksa vite.config.js dan resources/js/app.js.
3.1 Install NPM dependencies
npm install
3.2 Jalankan development server
npm run dev
Pastikan file resources/views/welcome.blade.php memuat @vite(['resources/js/app.js']).
4. Menambahkan Laravel Breeze (Starter Kit UI)
composer require laravel/breeze --dev
php artisan breeze:install vue
npm install && npm run dev
Breeze menyediakan autentikasi dasar dengan Vue 3, TailwindCSS, dan Inertia (pilihan). Pilih blade jika tidak ingin SPA.
4.1 Migrasi Database
php artisan migrate
5. Mengintegrasikan Laravel Sanctum (API Token & SPA Authentication)
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware EnsureFrontendRequestsAreStateful::class pada api guard di config/sanctum.php (default sudah).
5.1 Konfigurasi CORS
composer require fruitcake/laravel-cors
php artisan vendor:publish --tag="cors-config"
Ubah config/cors.php agar domain front‑end (misalnya http://localhost:5173) di‑allow.
5.2 Contoh Endpoint API Auth
// routes/api.php
use AppHttpControllersAuthController;
Route::post('/login', [AuthController::class, 'login']);
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
5.3 Controller Auth
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
use Illuminate\Support\Facades\Hash;
class AuthController extends Controller {
public function login(Request $request) {
$request->validate(['email' => 'required|email', 'password' => 'required']);
$user = User::where('email', $request->email)->first();
if (!$user || !Hash::check($request->password, $user->password)) {
return response()->json(['message' => 'Invalid credentials'], 401);
}
$token = $user->createToken('spa-token')->plainTextToken;
return response()->json(['token' => $token]);
}
}
6. Penyiapan Lingkungan Produksi
6.1 Optimasi Config & Routes
php artisan config:cache
php artisan route:cache
php artisan view:cache
6.2 Build Asset untuk Produksi
npm run build
File yang di‑generate berada di public/build dan akan diload otomatis oleh @vite di production.
6.3 Pengaturan .env Production
- APP_ENV=production
- APP_DEBUG=false
- APP_URL=https://domain-anda.com
- DB_CONNECTION=mysql
- CACHE_DRIVER=redis
- SESSION_DRIVER=redis
- QUEUE_CONNECTION=redis
7. Best Practice Tambahan
- Testing: gunakan PHPUnit & Pest, jalankan
php artisan testdalam pipeline CI. - Static Analysis: instal
phpstandanlarastanuntuk analisis kode. - Code Style: terapkan
laravel/pintuntuk formatting otomatis. - Docker: buat
docker-compose.ymldengan layanan php, nginx, mysql, redis untuk konsistensi dev‑to‑prod. - Security: set
APP_KEYkuat, aktifkanHelmetpada Nginx, dan gunakan HTTPS.
Dengan mengikuti langkah‑langkah di atas, Anda kini memiliki aplikasi Laravel 11 yang modern, aman, dan siap untuk skala produksi. Kombinasi Vite, Breeze, dan Sanctum memberikan alur kerja yang cepat untuk UI interaktif dan API token‑based authentication, sementara best practice tambahan memastikan kualitas kode dan performa yang optimal.
Tutorial step‑by‑step setup Laravel 11 dengan Vite, Breeze, Sanctum, serta best practice modern untuk produksi. Panduan lengkap untuk developer PHP Framework tahun 2026.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend