News

Loading...

Community Links

Laravel Jobs

Latest News

Loading...

Latest Partners

Loading...

Partners

Loading...

Panduan Lengkap Setup Laravel 11 dengan Praktik Modern: Vite, Breeze, Sanctum, dan lebih


Tutorial step-by-step ini membahas cara menginstal Laravel 11 terbaru dan mengkonfigurasi ekosistem modern seperti Vite, Breeze, Sanctum, serta best practice untuk pengembangan aplikasi web yang aman dan cepat.

1. Prasyarat

Pastikan server Anda sudah memenuhi persyaratan:

  • PHP >= 8.2
  • Composer 2.x
  • Node.js >= 20 dengan npm atau Yarn
  • Database (MySQL 8, PostgreSQL, atau SQLite)

2. Instalasi Laravel 11

composer create-project laravel/laravel my-app "11.*"

Masuk ke direktori proyek:

cd my-app

3. Mengganti Laravel Mix dengan Vite

Laravel 11 sudah menyertakan Vite secara default, tapi pastikan konfigurasi berikut ada:

# Install dependensi frontend
npm install
# Jalankan dev server
npm run dev

Jika Anda mengupgrade dari versi lama, jalankan:

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

3.1. 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,
        }),
    ],
});

4. Menambahkan UI Starter Kit dengan Breeze

composer require laravel/breeze --dev
php artisan breeze:install vue
# atau inertia & react sesuai preferensi
npm install
npm run dev
php artisan migrate

Breeze menyediakan scaffolding authentication dengan Vue, TailwindCSS, dan Vite terintegrasi.

4.1. Struktur folder setelah install

  • resources/js/Pages – komponent Vue
  • resources/views – layout Blade
  • routes/web.php – route autentikasi

5. Mengamankan API dengan Laravel Sanctum

Sanctum memungkinkan token‑based authentication untuk SPA atau mobile.

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

5.1. Konfigurasi Middleware

Tambahkan EnsureFrontendRequestsAreStateful::class ke grup api di app/Http/Kernel.php:

'api' => [
    \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
    'throttle:api',
    \Illuminate\Routing\Middleware\SubstituteBindings::class,
],

5.2. Membuat Route API

// routes/api.php
use App\Http\Controllers\API\UserController;

Route::middleware('auth:sanctum')->get('/user', [UserController::class, 'show']);

5.3. Menghasilkan Token di Controller

public function login(Request $request)
{
    $credentials = $request->only('email', 'password');
    if (!Auth::attempt($credentials)) {
        return response()->json(['message' => 'Invalid credentials'], 401);
    }
    $user = $request->user();
    $token = $user->createToken('spa-token')->plainTextToken;
    return response()->json(['token' => $token]);
}

6. Best Practice Modern

  • Environment: Gunakan .env.example yang lengkap, jangan commit .env ke VCS.
  • Linting & Formatting: Tambahkan eslint, stylelint, dan phpstan untuk kode yang konsisten.
  • Testing: Buat tes unit dengan PestPHP atau PHPUnit, contoh:
    php artisan test
  • Cache Config: Jalankan php artisan config:cache & route:cache di produksi.
  • Queue: Siapkan driver Redis untuk job queue, contoh pada .env:
    QUEUE_CONNECTION=redis
  • Static Analysis: Gunakan phpstan dan psalm untuk deteksi bug dini.

7. Deploy ke Production (contoh dengan Laravel Forge)

  1. Buat site baru, pilih PHP 8.2, dan hubungkan repository Git.
  2. Setting .env production (APP_ENV=production, APP_DEBUG=false).
  3. Jalankan script deployment:
    composer install --optimize-autoloader --no-dev
    npm ci
    npm run build
    php artisan migrate --force
    php artisan optimize
    
  4. Enable queue workers & schedule via Supervisor.

8. Verifikasi Instalasi

Buka browser dan akses http://your-domain.test. Anda harus melihat halaman landing Breeze. Coba login, buat token via API, dan pastikan respons JSON berisi token.


Dengan mengikuti langkah‑langkah di atas, Anda memiliki proyek Laravel 11 yang siap produksi, menggabungkan Vite untuk asset bundling, Breeze untuk UI modern, serta Sanctum untuk keamanan API. Terapkan best practice seperti caching, queue, dan static analysis untuk memastikan kode tetap scalable dan maintainable.
Tutorial lengkap setup Laravel 11 dengan Vite, Breeze, Sanctum, serta best practice modern untuk pengembangan web cepat, aman, dan scalable.

Laravel,PHP Framework,Web Development

#Laravel #LaravelIndonesia #PHP #WebDev #Backend

Tidak ada komentar:

Posting Komentar

Most Read

Loading...

Tutorial

Loading...

Packages

Loading...