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. Prerequisite & Persiapan Lingkungan
- PHP >= 8.3, Composer 2.x, Node.js >= 20, npm atau Yarn.
- Database MySQL 8.x atau PostgreSQL 15, atau SQLite untuk dev cepat.
- Git untuk version control.
1.1. Install Composer & Laravel Installer
composer global require laravel/installer
export PATH="$HOME/.config/composer/vendor/bin:$PATH" # tambahkan ke .bashrc atau .zshrc
2. Membuat Proyek Laravel 11 Baru
laravel new blog --jetstream # menggunakan Jetstream sebagai starter (opsional)
# atau tanpa starter
composer create-project laravel/laravel blog "11.*"
Masuk ke folder proyek:
cd blog
3. Mengatur Frontend dengan Vite (Default di Laravel 11)
Laravel 11 sudah menyertakan Vite. Pastikan dependensi Node terinstall:
npm install
npm run dev # untuk mode development dengan hot‑module reload
Jika ingin menambahkan TypeScript atau Vue 3, lakukan:
npm install -D vite-plugin-windicss
npm install vue@next@vite-plugin-vue2 # contoh instalasi Vue 3
4. Install Laravel Breeze (Auth ringan) & Integrasi Sanctum
4.1. Instalasi Breeze
composer require laravel/breeze --dev
php artisan breeze:install blade # atau vue, react, solid, svelte
npm install && npm run dev
4.2. Instalasi Sanctum untuk API Token & SPA Authentication
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Tambahkan middleware ke api guard di app/Http/Kernel.php:
'api' => [\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, 'throttle:api', \Illuminate\Routing\Middleware\SubstituteBindings::class],
5. Konfigurasi .env untuk Lingkungan Development
# Database
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=
# Sanctum
SESSION_DOMAIN=localhost
SANCTUM_STATEFUL_DOMAINS=localhost,127.0.0.1
# Vite
VITE_APP_URL=http://localhost:5173
6. Membuat Fitur CRUD Sederhana (Post)
6.1. Model & Migration
php artisan make:model Post -m
// database/migrations/xxxx_create_posts_table.php
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained()->onDelete('cascade');
$table->string('title');
$table->text('body');
$table->timestamps();
});
php artisan migrate
6.2. Controller & Routes
php artisan make:controller PostController --resource
// routes/web.php
use App\Http\Controllers\PostController;
Route::middleware(['auth', 'verified'])->group(function () {
Route::resource('posts', PostController::class);
});
6.3. Blade View (contoh index)
<!-- resources/views/posts/index.blade.php -->
<x-app-layout>
<section class="container mx-auto p-4">
<h1 class="text-2xl font-bold mb-4">Daftar Post</h1>
<a href="{{ route('posts.create') }}" class="btn btn-primary mb-4">Buat Post Baru</a>
<ul>
@foreach($posts as $post)
<li class="border-b py-2">
<a href="{{ route('posts.show', $post) }}" class="text-lg">{{ $post->title }}</a>
</li>
@endforeach
</ul>
</section>
</x-app-layout>
7. Best Practice Modern
- Environment Variables: Jangan commit .env, gunakan
.env.exampleyang lengkap. - Testing: Gunakan PestPHP atau PHPUnit, contoh
php artisan test. - Static Analysis: Install
phpstanataupsalmuntuk memastikan tipe aman. - Code Formatting: Laravel Pint (
composer require laravel/pint --dev). - Deploy: Gunakan Laravel Forge, Vapor, atau Docker dengan multi‑stage build (Node build → PHP runtime).
- Security: Aktifkan
APP_DEBUG=falsedi production, gunakanLaravelSanctumSanctumServiceProvideruntuk API token, dan rutin update dependensi.
8. Menjalankan & Menguji Aplikasi
# Development server
php artisan serve
# Frontend Vite
npm run dev
# Test
php artisan test
Jika semua langkah selesai, Anda sudah memiliki aplikasi Laravel 11 modern dengan autentikasi Breeze, API token Sanctum, dan asset bundling Vite siap produksi.
Dengan mengikuti tutorial ini, Anda telah berhasil menyiapkan Laravel 11 terbaru menggunakan stack modern Vite, Breeze, dan Sanctum. Pendekatan best practice yang diterapkan memastikan kode Anda aman, terstruktur, dan siap skala, sehingga memudahkan pengembangan berkelanjutan di era PHP Framework terkini.
Tutorial lengkap cara setup Laravel 11 terbaru dengan Vite, Breeze, Sanctum, serta best practice modern untuk proyek PHP Framework yang cepat dan aman.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar