Pelajari cara menginstal Laravel 11 terbaru dan mengkonfigurasi stack modern termasuk Vite, Laravel Breeze, Laravel Sanctum, serta best practice untuk pengembangan aplikasi web yang aman dan cepat.
1. Prasyarat
1.1. Lingkungan
- PHP >= 8.2
- Composer 2.x
- Node.js >= 20 (npm atau Yarn)
- Database (MySQL 8+, PostgreSQL, atau SQLite)
1.2. Tools yang disarankan
- VS Code dengan ekstensi PHP Intelephense
- Docker (opsional) untuk konsistensi lingkungan
2. Instalasi Laravel 11
2.1. Buat project baru
composer create-project laravel/laravel blog "11.*" --prefer-distPerintah di atas mengunduh Laravel versi 11 stabil.
2.2. Masuk ke direktori project
cd blog3. Setup Frontend dengan Vite
3.1. Instalasi dependensi Node
npm install3.2. Jalankan server dev Vite
npm run devLaravel 11 sudah mengkonfigurasi vite.config.js secara default, jadi tidak perlu modifikasi untuk kasus dasar.
4. Menambahkan Laravel Breeze (Starter Kit)
4.1. Instalasi paket Breeze
composer require laravel/breeze --dev4.2. Generate scaffolding dengan Vite + Blade
php artisan breeze:install bladeJika ingin menggunakan React atau Vue, ganti blade dengan react atau vue.
4.3. Install kembali dependensi front‑end
npm install && npm run dev4.4. Migrasi database
php artisan migrateDatabase default adalah SQLite; sesuaikan .env bila memakai MySQL/PostgreSQL.
5. Konfigurasi Laravel Sanctum untuk API Authentication
5.1. Instalasi Sanctum
composer require laravel/sanctum5.2. Publikasi konfigurasi & migrasi
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate5.3. Tambahkan middleware ke api guard
Di app/Http/Kernel.php tambahkan:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],5.4. Buat route API contoh
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});5.5. Frontend: Menggunakan token
import axios from 'axios';
axios.post('/login', {email, password})
.then(response => {
const token = response.data.token;
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
});6. Best Practice Modern
6.1. Struktur folder
- Letakkan service class di
app/Services - Gunakan repository pattern di
app/Repositories - Form request validation di
app/Http/Requests
6.2. Environment & Config
- Jangan pernah commit
.env; gunakan.env.examplesebagai template. - Gunakan
config:cachedi produksi:php artisan config:cache
6.3. Optimasi Asset
- Build production assets:
npm run build - Pastikan
APP_ENV=productiondanAPP_DEBUG=false
6.4. Keamanan
- Aktifkan
csrftoken secara default (Laravel sudah melakukannya). - Gunakan
SanctumatauPassportuntuk API token. - Set header
X-Content-Type-Options: nosniffdanX-Frame-Options: SAMEORIGINdi middleware.
6.5. Deployment
- Push kode ke repository Git.
- Deploy ke server (Forge, Vapor, atau Docker).
- Jalankan perintah produksi:
composer install --optimize-autoloader --no-dev
php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache
npm ci && npm run build
7. Verifikasi Instalasi
php artisan serveBuka http://127.0.0.1:8000 – Anda harus melihat halaman welcome Laravel. Registrasi atau login menggunakan UI Breeze untuk memastikan autentikasi berfungsi. Coba endpoint API /api/user dengan token Sanctum untuk memastikan token authentication beroperasi.
Dengan mengikuti tutorial ini, Anda memiliki proyek Laravel 11 yang lengkap, menggunakan Vite untuk asset modern, Breeze sebagai starter kit UI, dan Sanctum untuk API authentication. Mengikuti best practice yang disebutkan akan memastikan kode Anda tetap bersih, aman, dan siap untuk skala produksi.
Tutorial step-by-step setup Laravel 11 dengan Vite, Laravel Breeze, dan Laravel Sanctum. Ikuti best practice modern untuk pengembangan web dengan PHP Framework yang cepat dan aman.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar