kominfogusit/laravel-helper
最新稳定版本:v0.1.1
Composer 安装命令:
composer require kominfogusit/laravel-helper
包简介
Reusable helper utilities for Laravel 12 and 13 applications.
README 文档
README
Paket Laravel 12/13 yang menyediakan komponen Blade untuk membangun tampilan admin: komponen UI, aset layout yang dapat dipublish, helper tabel, remote select, interaksi modal, dan utilitas PHP.
Apa yang Disediakan
- Komponen Blade bernamespace seperti
x-laravel-helper::button,x-laravel-helper::form.input,x-laravel-helper::modal,x-laravel-helper::table-filter, danx-laravel-helper::table-index. - Aset layout, CSS, dan JavaScript yang dapat dipublish untuk tema UI default.
- Utilitas untuk query index, pesan exception, opsi enum, dan preservasi state index.
Persyaratan
- PHP
^8.2 - Laravel
^12.0atau^13.0 - Vite untuk aplikasi yang menggunakan layout atau mengimpor CSS yang dipublish dari
resources/css/app.css - Alpine.js untuk komponen interaktif seperti modal, table filter, table index, remote select, dan cascade select
window.axiosuntuk fitur remote select dan AJAX dependent select
Package menginstal dependensi runtime berikut melalui Composer:
blade-ui-kit/blade-iconsmallardduck/blade-lucide-iconsafatmustafa/blade-hugeiconsphp-flasher/flasher-laravelphp-flasher/flasher-noty-laravelphp-flasher/flasher-sweetalert-laravel
Instalasi
Install package melalui Composer:
composer require kominfogusit/laravel-helper
Laravel auto-discovers service provider secara otomatis.
Publish file konfigurasi:
php artisan vendor:publish --tag=laravel-helper-config
Publish layout, CSS, dan JavaScript default:
php artisan vendor:publish --tag=laravel-helper-core-ui
Install aset Flasher:
php artisan flasher:install
Import CSS yang dipublish di resources/css/app.css:
@import './vendor/laravel-helper/default.css';
default.css mengimpor stylesheet package untuk layout, badge, button, card, link, modal, select-remote, spinner, table-filter, table-index, dan komponen form.
Install Alpine.js:
npm install alpinejs
Aktifkan Alpine di resources/js/app.js:
import Alpine from 'alpinejs';
window.Alpine = Alpine;
Alpine.start();
Pastikan layout aplikasimu merender stack berikut agar komponen interaktif berfungsi:
@stack('modals')
@stack('scripts')
Layout default yang dipublish sudah menyertakan kedua stack tersebut.
Penggunaan Cepat
Gunakan layout yang dipublish sebagai shell aplikasi admin:
@extends('layout.default')
@section('page_heading', 'Dashboard')
@section('page_subheading', 'Ringkasan aplikasi dan aktivitas terbaru.')
@section('content')
<x-laravel-helper::card>
<p>Konten halaman ditulis di sini.</p>
</x-laravel-helper::card>
@endsection
Setelah publish, kustomisasi menu navigasi di resources/views/layout/sidebar.blade.php dan user menu di resources/views/layout/topbar.blade.php. Lihat Panduan Layout untuk detail lengkap.
Gunakan form input:
<x-laravel-helper::form.input
name="name"
label="Nama"
placeholder="Masukkan nama"
required
/>
Gunakan action button:
<x-laravel-helper::button type="submit" variant="primary">
Simpan
</x-laravel-helper::button>
Gunakan table index:
<x-laravel-helper::table-index
:data-list="$users"
:data-columns="[
['key' => 'name', 'label' => 'Nama', 'sortable' => true, 'sortKey' => 'name'],
['key' => 'email', 'label' => 'Email'],
]"
/>
Komponen
Form
| Komponen | Kegunaan | Dokumentasi |
|---|---|---|
x-laravel-helper::form.input | Field input teks dengan label, hint, error, atribut Livewire, dan fallback aksesibilitas. | Form Input |
x-laravel-helper::form.checkbox | Field checkbox dengan label, deskripsi, checked state, error, dan dukungan old(). | Form Checkbox |
x-laravel-helper::form.textarea | Field textarea dengan label, hint, error, rows, dan atribut Livewire. | Form Textarea |
x-laravel-helper::form.select | Field select statis dan AJAX cascade select. | Form Select |
x-laravel-helper::form.select-remote | Select dengan pencarian remote, hidden input, hydration, dan event parent-child. | Select Remote |
UI
| Komponen | Kegunaan | Dokumentasi |
|---|---|---|
x-laravel-helper::button | Tombol atau link aksi dengan variant, loading state, ikon, dan mode icon-only. | Button |
x-laravel-helper::link | Anchor dengan variant, perilaku underline, ikon, dan disabled state. | Link |
x-laravel-helper::badge | Label kecil dengan variant, tone, ukuran, ikon, dan indikator dot. | Badge |
x-laravel-helper::card | Kontainer konten dengan header opsional, footer, variant status, dan wrapper tag. | Card |
x-laravel-helper::spinner | Indikator loading untuk form, tombol, dan area loading inline. | Spinner |
Dialog & Modal
| Komponen | Kegunaan | Dokumentasi |
|---|---|---|
x-laravel-helper::modal | Dialog berbasis Alpine dengan event open/close/toggle dan slots. | Modal |
x-laravel-helper::modal-form-remote | Modal yang memuat form dari server via fetch, submit otomatis, dan error validation. | Modal Form Remote |
Table
| Komponen | Kegunaan | Dokumentasi |
|---|---|---|
x-laravel-helper::table-filter | Toolbar filter query-string dengan pencarian cepat, modal filter, dan dependent select. | Table Filter |
x-laravel-helper::table-index | Tabel data dengan header sortable, formatting, row action, rows-per-page, dan paginasi. | Table Index |
Utilitas
Package menyediakan utilitas consumer-facing berikut:
Indrahulu\LaravelHelper\Services\IndexQueryServiceIndrahulu\LaravelHelper\Services\ExceptionServiceIndrahulu\LaravelHelper\Concerns\HasEnumOptionsIndrahulu\LaravelHelper\Concerns\PreservesIndexState
Lihat Utilitas untuk contoh penggunaan lengkap.
Dokumentasi
Development
composer install
composer test
Rilis package mengikuti Git tag, dimulai dari v0.1.0 untuk rilis praproduksi pertama.
统计信息
- 总下载量: 3
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-04-14