Ikuti tutorial step‑by‑step ini untuk menginstal Laravel 11 terbaru, mengonfigurasi Vite, Breeze, Laravel Sanctum, serta menerapkan praktik terbaik modern agar proyek Anda siap produksi.
1. Prasyarat
- PHP 8.3 atau lebih tinggi
- Composer 2.x
- Node.js 20.x dan npm atau Yarn
- Database MySQL/PostgreSQL
2. Instalasi Laravel 11
composer create-project laravel/laravel contoh-app "11.*"
Masuk ke folder proyek:
cd contoh-app
3. Setup Vite (Asset Bundler Modern)
Laravel 11 sudah menyertakan Vite secara default, tapi pastikan dependensi ter‑install:
npm install
Jalankan dev server:
npm run dev
Pastikan vite.config.js berisi plugin Laravel:
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [laravel(['resources/css/app.css', 'resources/js/app.js'])],
});
4. Instalasi Laravel Breeze (Starter Kit UI)
composer require laravel/breeze --dev
php artisan breeze:install vue
Jika ingin React atau Blade, ganti parameter sesuai (react, blade).
npm install && npm run dev
Jalankan migrasi:
php artisan migrate
5. Konfigurasi Laravel Sanctum (SPA Authentication)
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware di app/Http/Kernel.php:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
Set konfigurasi CORS di config/cors.php agar domain frontend di‑allow:
'paths' => ['api/*', 'sanctum/csrf-cookie'],
'allowed_methods' => ['*'],
'allowed_origins' => ['http://localhost:5173'], // sesuaikan dengan Vite dev URL
'allowed_headers' => ['*'],
'supports_credentials' => true,
Contoh request login di Vue (berdasarkan Breeze):
await axios.get('http://localhost:8000/sanctum/csrf-cookie', { withCredentials: true });
await axios.post('/login', { email, password }, { withCredentials: true });
6. Pengaturan Env untuk Production
- Set
APP_ENV=productiondanAPP_DEBUG=false - Konfigurasi cache:
php artisan config:cache,php artisan route:cache,php artisan view:cache - Optimasi autoloader:
composer install --optimize-autoloader --no-dev - Build assets:
npm run build
7. Best Practice Modern
- Environment Segregation: gunakan
.env.examplesebagai template, jangan commit.env. - Database Transactions dalam testing: gunakan
RefreshDatabasetrait. - Laravel Pint untuk coding standard:
composer require laravel/pint --devlalu./vendor/bin/pint. - Static Analysis dengan PHPStan atau Psalm.
- Docker untuk konsistensi dev environment (Laravel Sail). Jalankan
./vendor/bin/sail up -d. - Feature Flags menggunakan package
spatie/laravel-feature-flagsbila diperlukan.
8. Deploy ke Server Linux
- Upload kode via Git atau FTP.
- Install dependencies:
- Set permission:
- Configure web server (NGINX contoh):
- Run migrations & queue workers:
composer install --no-dev --optimize-autoloader
npm ci --production
npm run build
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache
server {
listen 80;
server_name contoh.com;
root /var/www/contoh-app/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
php artisan migrate --force
php artisan queue:work --daemon --quiet &
Dengan mengikuti langkah‑langkah di atas, Anda memiliki aplikasi Laravel 11 yang teroptimasi, menggunakan Vite untuk asset bundling, Breeze sebagai starter UI, dan Sanctum untuk autentikasi SPA. Praktik terbaik modern seperti caching, Docker, dan static analysis memastikan kode bersih, aman, dan siap skala produksi.
Tutorial lengkap setup Laravel 11 dengan Vite, Breeze, Sanctum, dan best practice modern untuk developer PHP Framework di 2026.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend