Tutorial step‑by‑step ini mengajarkan cara menginstal Laravel 11 terbaru, mengkonfigurasi Vite sebagai bundler aset, menambahkan Breeze untuk scaffolding UI, serta mengamankan API dengan Sanctum – semua dengan praktik terbaik tahun 2026.
1. Prasyarat
- PHP >= 8.3
- Composer 2.x
- Node.js >= 20 dengan npm atau Yarn
- Database MySQL 8 atau PostgreSQL 15
- Git
2. Instalasi Laravel 11
composer create-project laravel/laravel blog "11.*" --prefer-dist
Masuk ke folder proyek:
cd blog
2.1. Inisialisasi Git
git init && git add . && git commit -m "Initial commit - Laravel 11"
3. Konfigurasi Vite (Asset Bundler bawaan)
Laravel 11 sudah menyertakan Vite. Pastikan vite.config.js berisi preset Laravel.
npm install && npm run dev
Jika menggunakan yarn:
yarn install && yarn dev
3.1. Optimasi Production
npm run build
Perintah ini menghasilkan berkas ter‑minify di public/build dan menambahkan hash untuk cache‑busting.
4. Menambahkan Laravel Breeze (Livewire atau Blade)
Untuk UI cepat gunakan Breeze. Pilih stack Blade (default) atau Livewire jika interaktivitas diperlukan.
composer require laravel/breeze --dev
php artisan breeze:install blade
# atau untuk Livewire
# php artisan breeze:install livewire
npm run dev
Jalankan migrasi:
php artisan migrate
4.1. Customisasi Tailwind
- Instalasi Tailwind (sudah disertakan oleh Breeze).
- Ubah
tailwind.config.jsuntuk menambahdarkMode: ['class']demi dukungan dark mode.
5. Mengamankan API dengan Laravel Sanctum
Sanctum memungkinkan token‑based atau session‑based authentication untuk SPA.
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
5.1. Middleware
Tambahkan EnsureFrontendRequestsAreStateful::class ke grup api di app/Http/Kernel.php:
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
5.2. Contoh Route API
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
5.3. Frontend (Axios)
import axios from 'axios';
axios.defaults.withCredentials = true;
axios.get('/sanctum/csrf-cookie').then(() => {
axios.post('/login', {email, password}).then(res => {
// authenticated
});
});
6. Best Practice Modern (2026)
- Environment Variables: Simpan semua secret di
.envdan gunakanphpdotenv5.x untuk tipe casting. - Database Migration & Seeding: Jalankan
php artisan migrate --stepuntuk rollback granular dan gunakan factories berbasisfakerphp/fakerv2. - Testing: Pakai PestPHP 2.x bersama Laravel Testbench; contoh:
pestuntuk unit & feature test. - Code Quality: Integrasikan PHPStan 2.x dan Pint untuk format otomatis pada CI GitHub Actions.
- Cache Strategy: Gunakan Redis (Laravel 11 default) untuk session, cache, dan queue; set
CACHE_DRIVER=redisdanQUEUE_CONNECTION=redis. - Deployment: Containerize dengan Docker multi‑stage, gunakan
php-fpm+caddysebagai reverse proxy, dan jalankanphp artisan schedule:runvia cron container.
7. Verifikasi Instalasi
- Buka
http://localhost:8000– tampilan Breeze welcome. - Register & login, pastikan session berfungsi.
- Buka
http://localhost:8000/api/userdengan token Sanctum – harus mengembalikan JSON user.
Dengan mengikuti langkah‑langkah di atas, Anda akan mendapatkan proyek Laravel 11 yang modern, terstruktur, dan siap untuk produksi. Menggunakan Vite, Breeze, dan Sanctum memastikan performa front‑end optimal, UI cepat, serta keamanan API yang sesuai standar 2026. Terapkan best practice yang disebutkan untuk mempermudah pemeliharaan, scaling, dan kolaborasi tim.
Tutorial lengkap setup Laravel 11 tahun 2026 dengan Vite, Breeze, dan Sanctum. Langkah instalasi, konfigurasi, contoh kode, dan best practice modern untuk pengembangan web PHP Framework.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar