Temukan cara menginstal Laravel 11 terbaru serta mengintegrasikan tool modern seperti Vite, Breeze, Sanctum, dan Jetstream secara step‑by‑step untuk aplikasi web yang cepat, aman, dan siap produksi.
1. Persyaratan Sistem
- PHP >= 8.2
- Composer 2.x
- Node.js >= 20 (untuk Vite)
- Database MySQL 8.x atau PostgreSQL
2. Instalasi Laravel 11
Jalankan perintah berikut untuk membuat proyek baru menggunakan Composer:
composer create-project laravel/laravel nama-proyek "^11.0"
Masuk ke direktori proyek:
cd nama-proyek
3. Mengaktifkan Vite (Asset Bundler Modern)
Laravel 11 sudah menyertakan Vite secara default, cukup install dependensi npm:
npm install
Jalankan development server:
npm run dev
Untuk produksi, gunakan:
npm run build
4. Menambahkan Laravel Breeze (Starter Kit UI)
Breeze menyediakan autentikasi sederhana dengan Blade atau Inertia. Berikut contoh instalasi dengan Blade:
composer require laravel/breeze --dev
php artisan breeze:install blade
npm install && npm run dev
php artisan migrate
Jika ingin menggunakan React atau Vue, cukup ganti blade dengan react atau vue pada perintah di atas.
5. Mengonfigurasi Laravel Sanctum (API Authentication)
Sanctum memungkinkan token‑based atau SPA authentication. Instal paket:
composer require laravel/sanctum
Publikasikan konfigurasi dan migrasi:
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware EnsureFrontendRequestsAreStateful::class pada api guard di config/sanctum.php (default sudah di‑set untuk localhost).
Di app/Http/Kernel.php tambahkan:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
Contoh pembuatan token pada controller:
use App\Models\User;
public function login(Request $request)
{
$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]);
}
6. Menambahkan Laravel Jetstream (Full‑stack Scaffolding)
Jika membutuhkan fitur team management, two‑factor authentication, atau Livewire/Inertia, gunakan Jetstream:
composer require laravel/jetstream
php artisan jetstream:install livewire
npm install && npm run dev
php artisan migrate
Untuk Inertia + Vue:
php artisan jetstream:install inertia
npm install && npm run dev
7. Pengaturan Environment & Security Best Practice
- Set
APP_DEBUG=falsepada produksi. - Gunakan
APP_KEYyang kuat (generated otomatis). - Aktifkan
HTTPSdiAppServiceProvider:
if (App::environment('production')) {
URL::forceScheme('https');
}
- Tambahkan header keamanan via middleware
App\Http\Middleware\SecureHeaders(contoh: CSP, X‑Frame‑Options).
8. Deployment Pipeline (Contoh dengan GitHub Actions)
File .github/workflows/deploy.yml:
name: Deploy Laravel
on:
push:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
- name: Install Composer dependencies
run: composer install --no-dev --prefer-dist --optimize-autoloader
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- run: npm ci && npm run build
- name: Deploy to Server
uses: appleboy/[email protected]
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SERVER_SSH_KEY }}
script: |
cd /var/www/namaproject
git pull origin main
composer install --no-dev --optimize-autoloader
npm ci && npm run build
php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache
9. Testing & Linting
- Jalankan unit test:
php artisan test
- Gunakan Laravel Pint untuk coding style:
composer require laravel/pint --dev
./vendor/bin/pint
10. Ringkasan & Checklist Production Ready
- Laravel 11 terinstall & berjalan.
- Vite compile assets tanpa error.
- Breeze/Jetstream sudah ter‑setup sesuai kebutuhan UI.
- Sanctum siap melindungi API.
- Environment variables telah dikonfigurasi (APP_ENV=production, CACHE_DRIVER=redis, QUEUE_CONNECTION=redis, dsb).
- HTTPS dan security header diterapkan.
- CI/CD pipeline otomatis deploy.
- Test coverage minimal 80%.
Dengan mengikuti langkah‑langkah di atas, Anda akan memiliki aplikasi Laravel 11 yang dibangun dengan praktik modern: Vite untuk asset bundling, Breeze atau Jetstream untuk UI cepat, Sanctum untuk API security, serta pipeline CI/CD yang siap produksi. Kombinasi ini memberi performa tinggi, keamanan kuat, dan pengembangan yang scalable—sesuai standar Laravel terbaru di tahun 2026.
Tutorial lengkap instalasi Laravel 11 dengan Vite, Breeze, Sanctum, dan Jetstream. Langkah demi langkah setup modern, konfigurasi keamanan, dan pipeline deployment.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar