Tutorial langkah demi langkah untuk menyiapkan proyek Laravel terbaru di tahun 2026 menggunakan tool modern seperti Vite, Breeze, Sanctum, serta Docker untuk lingkungan pengembangan yang konsisten.
1. Prasyarat
Software yang dibutuhkan
- PHP 8.3 atau lebih baru
- Composer 2.7+
- Node.js 20.x
- Docker & Docker Compose
- Git
2. Membuat Project Laravel 11
Instalasi via Composer
composer create-project laravel/laravel laravel-modern "11.*" --prefer-distPerintah di atas akan mengunduh Laravel 11, versi stabil terbaru di 2026.
3. Mengkonfigurasi Vite
Instalasi dependensi frontend
cd laravel-modern
npm install
npm install vite laravel-vite-plugin@^1.0Laravel 11 sudah mengaktifkan Vite secara default, namun pastikan file vite.config.js berisi:
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [laravel(["resources/css/app.css", "resources/js/app.js"])],
});4. Menambahkan Breeze (Starter Kit) dengan Inertia.js
Instalasi Breeze
composer require laravel/breeze --dev
php artisan breeze:install inertiaPerintah di atas menginstall Breeze dengan stack Inertia + Vue 3, yang cocok untuk SPA modern.
Mengompilasi aset
npm run devPastikan tidak ada error, lalu akses http://localhost:8000 untuk melihat halaman login bawaan.
5. Mengatur Sanctum untuk API Authentication
Instalasi Sanctum
composer require laravel/sanctumPublish konfigurasi & migrasi
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrateMenambahkan middleware
Di app/Http/Kernel.php tambahkan:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],Contoh route API
use AppHttpControllersApiAuthController;
Route::post('/login', [AuthController::class, 'login']);
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});6. Dockerize Lingkungan Development
File docker-compose.yml
version: '3.8'
services:
app:
image: php:8.3-fpm
container_name: laravel_app
working_dir: /var/www/html
volumes:
- ./:/var/www/html
networks:
- laravel
depends_on:
- db
environment:
- APP_ENV=local
- DB_HOST=db
- DB_DATABASE=laravel
- DB_USERNAME=laravel
- DB_PASSWORD=secret
web:
image: nginx:stable-alpine
container_name: laravel_web
ports:
- "8080:80"
volumes:
- ./:/var/www/html
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
networks:
- laravel
depends_on:
- app
db:
image: mysql:8.0
container_name: laravel_db
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: laravel
MYSQL_USER: laravel
MYSQL_PASSWORD: secret
ports:
- "3306:3306"
volumes:
- dbdata:/var/lib/mysql
networks:
- laravel
networks:
laravel:
driver: bridge
volumes:
dbdata:
driver: localFile Nginx config (nginx/default.conf)
server {
listen 80;
index index.php index.html;
root /var/www/html/public;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass app:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
}Menjalankan container
docker compose up -dSetelah kontainer berjalan, jalankan migrasi lewat container:
docker exec -it laravel_app php artisan migrate7. Best Practice Tambahan
- Environment Variables: Simpan semua rahasia di
.envdan gunakanLaravel Envoyataugit‑cryptuntuk keamanan repo. - Code Formatting: Aktifkan
Laravel Pint(PHP CS‑Fixer) untuk standar kode otomatis. - Testing: Buat tes unit & feature dengan
Pest(``composer require pestphp/pest --dev``) dan jalankan di CI/CD pipeline. - Cache Config & Routes: Di produksi jalankan
php artisan config:cachedanphp artisan route:cache.
Dengan mengikuti langkah-langkah di atas, Anda mendapatkan proyek Laravel 11 yang siap produksi, menggunakan stack modern Vite, Breeze‑Inertia, Sanctum untuk API, serta Docker untuk konsistensi lingkungan. Praktik terbaik tambahan memastikan kode tetap bersih, aman, dan mudah dipelihara seiring pertumbuhan aplikasi.
Tutorial lengkap setup Laravel 11 di 2026 dengan Vite, Breeze, Sanctum, dan Docker. Ikuti langkah demi langkah, contoh kode, konfigurasi, dan best practice modern.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar