Panduan lengkap langkah‑demi‑langkah untuk menginstal Laravel 11 terbaru, mengonfigurasi Vite, menambahkan Breeze, mengamankan API dengan Sanctum, serta tips best practice 2026.
1. Persiapan Lingkungan
Prerequisite
- PHP >= 8.2
- Composer 2.x
- Node.js >= 20 & npm
- Database MySQL 8 atau PostgreSQL
Instalasi Laravel
composer create-project laravel/laravel blog "11.*" --prefer-dist
Buka folder project dan jalankan cd blog.
2. Konfigurasi Vite (Frontend Build Tool)
Instalasi Dependensi
npm install --save-dev vite laravel-vite-plugin
Ubah vite.config.js
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [
laravel({
input: ['resources/css/app.css', 'resources/js/app.js'],
refresh: true,
}),
],
});
Update Blade Layout
Di resources/views/layouts/app.blade.php ganti tag script/style lama dengan helper Vite:
<!-- Vite Assets -->
@vite(['resources/css/app.css', 'resources/js/app.js'])
3. Menambahkan Laravel Breeze (Starter Kit)
Instalasi Breeze
composer require laravel/breeze --dev
php artisan breeze:install vue
Jika ingin React gunakan react alih‑alih vue.
Compile Assets
npm install && npm run dev
Migrasi Database
php artisan migrate
4. Mengamankan API dengan Laravel Sanctum
Instalasi Sanctum
composer require laravel/sanctum
Publish Config & Migration
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Konfigurasi Middleware
Tambahkan EnsureFrontendRequestsAreStateful::class ke grup api di app/Http/Kernel.php:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
Contoh Endpoint Login
use Illuminate\Http\Request;
use App\Models\User;
Route::post('/login', function (Request $request) {
$request->validate([
'email' => 'required|email',
'password' => 'required',
]);
if (!auth()->attempt($request->only('email', 'password'))){
return response()->json(['message' => 'Invalid credentials'], 401);
}
$token = $request->user()->createToken('api-token')->plainTextToken;
return response()->json(['token' => $token]);
});
5. Best Practice Modern (2026)
- Environment Variables: Simpan semua rahasia di
.envdan gunakanconfig:cachesetelah perubahan. - Typed Routes: Gunakan
php artisan route:cachedi production. - PHPStan & Larastan: Tambahkan static analysis untuk menjaga kualitas kode.
composer require --dev phpstan/phpstan larastan/larastan - Docker Development: Deploy stack dengan
docker-compose.ymlyang menyertakan php, mysql, redis, dan horizon. - Testing: Gunakan PestPHP untuk test yang lebih ekspresif.
composer require --dev pestphp/pest pestphp/pest-plugin-laravel
Dengan mengikuti langkah‑langkah di atas, Anda memiliki proyek Laravel 11 yang siap dikembangkan secara modern, scalable, dan aman.
Laravel 11 memberikan fondasi yang kuat dengan Vite, Breeze, dan Sanctum. Mengikuti best practice 2026 seperti caching konfigurasi, static analysis, dan container‑based development memastikan aplikasi Anda tetap performant, aman, dan mudah dipelihara.
Tutorial step-by-step setup Laravel 11 dengan Vite, Breeze, Sanctum dan best practice modern tahun 2026. Panduan instalasi, konfigurasi, contoh kode, dan tips keamanan.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar