Panduan lengkap langkah demi langkah untuk menginstal Laravel 11 terbaru dan mengkonfigurasi stack modern menggunakan Vite, Breeze, Sanctum, serta best practice keamanan dan struktur proyek.
1. Persiapan Lingkungan
Instalasi Composer & PHP
- Pastikan PHP >= 8.2 terinstall.
- Install Composer terbaru:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Instalasi Node.js & npm
- Gunakan Node 20 LTS:
nvm install 20 && nvm use 20 - Pastikan npm berada pada versi 10.x.
2. Membuat Proyek Laravel 11
Instalasi Laravel Installer (opsional)
composer global require laravel/installer
Membuat proyek baru
laravel new blog --jetstream
atau tanpa installer:
composer create-project --prefer-dist laravel/laravel blog "11.*"
3. Mengaktifkan Vite (Asset Bundler)
Instalasi Vite & Laravel Vite Plugin
composer require innologica/laravel-vite
npm install --save-dev vite laravel-vite-plugin
Konfigurasi 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
Ganti @vite di resources/views/layouts/app.blade.php:
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ config('app.name') }}</title>
@vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body>
@yield('content')
</body>
</html>
4. Menambahkan Laravel Breeze (Auth Starter)
Instalasi Breeze
composer require laravel/breeze --dev
php artisan breeze:install vue
npm install && npm run dev
Breeze menyediakan routes, controllers, dan view scaffold yang kompatibel dengan Vite.
5. Mengintegrasikan Laravel Sanctum (API Token & SPA)
Instalasi Sanctum
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Konfigurasi Middleware
Tambahkan EnsureFrontendRequestsAreStateful::class ke api middleware group di app/Http/Kernel.php:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
Contoh Penggunaan Token
// routes/api.php
use App\Http\Controllers\API\AuthController;
Route::post('/login', [AuthController::class, 'login']);
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
6. Best Practice untuk Struktur Projek
- Feature‑Based Directories: pisahkan kode per domain di dalam
app/Features(e.g.,Posts,Comments). - Form Request Validation: gunakan
php artisan make:requestuntuk semua validasi input. - Service Layer: buat kelas service di
app/Servicesuntuk logika bisnis, menjaga controller tetap ringan. - Repository Pattern (opsional): jika aplikasi membutuhkan abstraksi data, gunakan repository di
app/Repositories. - Environment Security: jangan commit
.env, gunakanenv:cachedi produksi. - Cache Configuration: aktifkan Redis di
config/cache.phpuntuk queue & session yang cepat.
7. Deploy ke Production
Optimasi Artisan Commands
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan event:cache
php artisan optimize
Build Assets
npm run build
Set Permissions
chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data .
8. Testing & QA
- Unit & Feature Test dengan
php artisan test. - Static Analysis:
composer require --dev phpstan/phpstandan jalankan./vendor/bin/phpstan analyse. - Laravel Pint untuk code style:
composer require --dev laravel/pint && ./vendor/bin/pint.
9. Kesimpulan
Dengan mengikuti langkah‑langkah di atas, Anda memiliki basis Laravel 11 yang modern, cepat, dan siap untuk pengembangan aplikasi SPA atau API yang aman menggunakan Vite, Breeze, dan Sanctum. Implementasi best practice seperti feature‑based struktur dan service layer akan memudahkan skalabilitas di masa depan.
Laravel 11 kini menawarkan alur kerja yang lebih ringan dan terintegrasi berkat Vite, Breeze, dan Sanctum. Mengikuti tutorial ini memberi fondasi kuat, mempercepat development, dan memastikan aplikasi siap produksi dengan standar keamanan serta performa modern.
Panduan step-by-step setup Laravel 11 dengan Vite, Breeze, Sanctum, serta best practice modern untuk pengembangan aplikasi web PHP Framework yang cepat dan aman.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar