Tutorial step-by-step untuk menginstal dan mengkonfigurasi Laravel 11 terbaru dengan stack modern—Vite untuk asset bundling, Breeze untuk starter kit, serta Sanctum untuk API authentication.
1. Persyaratan Sistem
- PHP >= 8.3
- Composer 2.x
- Node.js >= 20 dengan npm atau Yarn
- Database (MySQL, PostgreSQL, atau SQLite)
2. Instalasi Laravel 11
Step 1: Buat Project Baru
composer create-project laravel/laravel my-project "11.*"Perintah ini mengunduh Laravel 11 stabil beserta dependensi dasar.
Step 2: Masuk ke Direktori Project
cd my-projectPastikan file .env sudah ter‑generate.
3. Konfigurasi Database
# .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel11
DB_USERNAME=root
DB_PASSWORD=Jalankan migrasi untuk memastikan koneksi berhasil:
php artisan migrate4. Setup Frontend Modern dengan Vite
Step 1: Instalasi Dependensi Node
npm installLaravel 11 sudah menyertakan vite dan laravel-vite-plugin secara default.
Step 2: Struktur Direktori
resources/js/app.js– entry point utama.resources/css/app.css– stylesheet utama.
Step 3: Jalankan Dev Server
npm run devVite akan menampilkan URL hot‑module reloading, biasanya http://localhost:5173.
5. Instalasi Laravel Breeze (Starter Kit)
composer require laravel/breeze --dev
php artisan breeze:install vuePerintah di atas menginstall Breeze dengan Vue 3 sebagai stack front‑end. Untuk React atau Blade, ganti parameter sesuai.
Step 1: Build Assets
npm run devStep 2: Migrasi Auth Tables
php artisan migrateSetelah ini, Anda sudah memiliki route /login, /register, dll.
6. Integrasi Laravel Sanctum untuk API Authentication
Step 1: Install Sanctum
composer require laravel/sanctumStep 2: Publikasi Config & Migration
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrateStep 3: Tambahkan Middleware
Di app/Http/Kernel.php, pastikan \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class berada dalam grup api (default Laravel 11 sudah melakukannya).
Step 4: Buat Route API
// routes/api.php
use AppHttpControllersApiAuthController;
Route::post('/login', [AuthController::class, 'login']);
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});Step 5: Controller Example
namespace App\Http\Controllers\Api;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Laravel\Sanctum\PersonalAccessToken;
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('api-token')->plainTextToken;
return response()->json(['token' => $token]);
}
}
Client JavaScript dapat menyimpan token di localStorage dan menambahkannya ke header Authorization: Bearer {token}.
7. Best Practice Modern
- Environment Files: Simpan secret di
.env, jangan pernah commit ke VCS. - Database Seeding & Factories: Gunakan
php artisan make:factorydanphp artisan db:seeduntuk data development. - Type‑Safe Routes: Aktifkan
php artisan route:cachepada produksi. - Static Asset Versioning: Vite sudah menambahkan hash otomatis; pastikan
mix.manifestdi‑publish. - Testing: Laravel 11 menyertakan Pest & PHPUnit; tulis tes fitur untuk auth dan API.
8. Deploy ke Production
# Build assets
npm run build
# Optimasi Laravel
php artisan config:cache
php artisan route:cache
php artisan view:cache
# Queue & Scheduler (jika diperlukan)
supervisorctl restart all
Pastikan server menjalankan PHP 8.3+, dan web server (NGINX atau Apache) diarahkan ke public/index.php.
Dengan mengikuti langkah-langkah di atas, Anda memiliki proyek Laravel 11 modern yang siap untuk pengembangan cepat, API yang aman dengan Sanctum, serta front‑end yang di‑bundle oleh Vite. Praktik terbaik seperti caching konfigurasi, penggunaan factory, dan pengujian otomatis akan meningkatkan kualitas kode dan mempermudah scaling di lingkungan produksi.
Tutorial lengkap setup Laravel 11 dengan Vite, Breeze, dan Sanctum. Langkah demi langkah instalasi, konfigurasi, contoh kode, dan best practice modern untuk pengembangan web PHP.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend