Tutorial step‑by‑step ini memandu Anda menginstal Laravel 11 terbaru, mengkonfigurasi Vite, Breeze, Sanctum, serta menyiapkan lingkungan pengembangan yang optimal untuk proyek PHP Framework modern.
1. Prasyarat
- PHP >= 8.2
- Composer 2.x
- Node.js >= 20 & npm atau Yarn
- Database (MySQL, PostgreSQL, atau SQLite)
2. Instalasi Laravel 11
composer create-project laravel/laravel my-app "^11.0"
Perintah di atas membuat proyek baru dengan versi stabil Laravel 11.
3. Konfigurasi Environment
cd my-app
cp .env.example .env
php artisan key:generate
Sesuaikan .env untuk koneksi database dan APP_URL.
4. Setup Frontend Modern dengan Vite
Laravel 11 sudah terintegrasi Vite secara default. Pastikan dependensi sudah terinstall:
npm install
npm run dev
Untuk produksi:
npm run build
Best Practice
- Gunakan
vite.config.tsuntuk alias seperti@/components. - Aktifkan
laravel-vite-pluginversi terbaru.
5. Instalasi Laravel Breeze (Starter Kit)
composer require laravel/breeze --dev
php artisan breeze:install vue
npm install
npm run dev
Breeze menyediakan autentikasi dasar, komponen Vue 3 (atau React/Svelte) dan routing.
Konfigurasi Tambahan
- Ubah
app/Providers/RouteServiceProvider.phpuntuk menyesuaikan prefix API. - Pastikan
vite.config.tsmengikutsertakanvue()plugin.
6. Menambahkan Laravel Sanctum untuk API Token
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware ke api 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\Models\User;
use Illuminate\Http\Request;
Route::post('/login', function (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]);
});
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
7. Struktur Folder yang Disarankan
- app/Models – Semua model Eloquent.
- app/Http/Controllers/Api – Controller API terpisah.
- resources/js – Komponen Vue, router, store.
- routes/api.php – Endpoint API dengan Sanctum.
- tests/Feature – Tes integrasi untuk auth & token.
8. Menjalankan Test Otomatis
php artisan test
Pastikan coverage >80% untuk autentikasi.
9. Deploy ke Production
- Set environment variable
APP_ENV=productiondanAPP_DEBUG=false. - Jalankan
php artisan migrate --forcedannpm run build. - Konfigurasi server (Nginx atau Apache) untuk mengarahkan semua request ke
public/index.php. - Gunakan
php-fpm+supervisoruntuk queue worker bila diperlukan.
Best Practice Production
- Cache konfigurasi:
php artisan config:cache - Cache route:
php artisan route:cache - Gunakan Horizon jika memakai queue Redis.
Dengan mengikuti langkah-langkah di atas, Anda memiliki proyek Laravel 11 yang modern, aman, dan siap skala. Menggunakan Vite, Breeze, dan Sanctum memberikan fondasi yang kuat untuk aplikasi web serta API, memanfaatkan keunggulan PHP Framework terkini dan best practice untuk performa dan keamanan.
Tutorial lengkap setup Laravel 11 dengan Vite, Breeze, Sanctum dan best practice modern. Ikuti langkah instalasi, konfigurasi, contoh kode, serta deployment produksi.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar