News

Loading...

Community Links

Laravel Jobs

Latest News

Loading...

Latest Partners

Loading...

Partners

Loading...

Setup Laravel 11 dengan Best Practice Modern: Vite, Breeze, Sanctum, dan Jetstream


Panduan lengkap langkah demi langkah untuk menginstal Laravel 11 terbaru dan mengkonfigurasi stack modern menggunakan Vite, Breeze, Sanctum, serta best practice keamanan dan struktur proyek.

1. Persiapan Lingkungan

Instalasi Composer & PHP

  • Pastikan PHP >= 8.2 terinstall.
  • Install Composer terbaru: php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Instalasi Node.js & npm

  • Gunakan Node 20 LTS: nvm install 20 && nvm use 20
  • Pastikan npm berada pada versi 10.x.

2. Membuat Proyek Laravel 11

Instalasi Laravel Installer (opsional)

composer global require laravel/installer

Membuat proyek baru

laravel new blog --jetstream

atau tanpa installer:

composer create-project --prefer-dist laravel/laravel blog "11.*"

3. Mengaktifkan Vite (Asset Bundler)

Instalasi Vite & Laravel Vite Plugin

composer require innologica/laravel-vite
npm install --save-dev vite laravel-vite-plugin

Konfigurasi vite.config.js

import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';

export default defineConfig({
    plugins: [
        laravel({
            input: ['resources/css/app.css', 'resources/js/app.js'],
            refresh: true,
        }),
    ],
});

Update Blade Layout

Ganti @vite di resources/views/layouts/app.blade.php:

<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>{{ config('app.name') }}</title>
    @vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body>
    @yield('content')
</body>
</html>

4. Menambahkan Laravel Breeze (Auth Starter)

Instalasi Breeze

composer require laravel/breeze --dev
php artisan breeze:install vue
npm install && npm run dev

Breeze menyediakan routes, controllers, dan view scaffold yang kompatibel dengan Vite.

5. Mengintegrasikan Laravel Sanctum (API Token & SPA)

Instalasi Sanctum

composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate

Konfigurasi Middleware

Tambahkan EnsureFrontendRequestsAreStateful::class ke api middleware group 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\Http\Controllers\API\AuthController;
Route::post('/login', [AuthController::class, 'login']);
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});

6. Best Practice untuk Struktur Projek

  • Feature‑Based Directories: pisahkan kode per domain di dalam app/Features (e.g., Posts, Comments).
  • Form Request Validation: gunakan php artisan make:request untuk semua validasi input.
  • Service Layer: buat kelas service di app/Services untuk logika bisnis, menjaga controller tetap ringan.
  • Repository Pattern (opsional): jika aplikasi membutuhkan abstraksi data, gunakan repository di app/Repositories.
  • Environment Security: jangan commit .env, gunakan env:cache di produksi.
  • Cache Configuration: aktifkan Redis di config/cache.php untuk queue & session yang cepat.

7. Deploy ke Production

Optimasi Artisan Commands

php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan event:cache
php artisan optimize

Build Assets

npm run build

Set Permissions

chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data .

8. Testing & QA

  • Unit & Feature Test dengan php artisan test.
  • Static Analysis: composer require --dev phpstan/phpstan dan jalankan ./vendor/bin/phpstan analyse.
  • Laravel Pint untuk code style: composer require --dev laravel/pint && ./vendor/bin/pint.

9. Kesimpulan

Dengan mengikuti langkah‑langkah di atas, Anda memiliki basis Laravel 11 yang modern, cepat, dan siap untuk pengembangan aplikasi SPA atau API yang aman menggunakan Vite, Breeze, dan Sanctum. Implementasi best practice seperti feature‑based struktur dan service layer akan memudahkan skalabilitas di masa depan.


Laravel 11 kini menawarkan alur kerja yang lebih ringan dan terintegrasi berkat Vite, Breeze, dan Sanctum. Mengikuti tutorial ini memberi fondasi kuat, mempercepat development, dan memastikan aplikasi siap produksi dengan standar keamanan serta performa modern.
Panduan step-by-step setup Laravel 11 dengan Vite, Breeze, Sanctum, serta best practice modern untuk pengembangan aplikasi web PHP Framework yang cepat dan aman.

Laravel,PHP Framework,Web Development

#Laravel #LaravelIndonesia #PHP #WebDev #Backend

Tidak ada komentar:

Posting Komentar

Most Read

Loading...

Tutorial

Loading...

Packages

Loading...