PHPackages                             aanugerah/wedding-pro - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. aanugerah/wedding-pro

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

aanugerah/wedding-pro
=====================

A comprehensive Wedding Organizer management suite for Filament PHP with Native Mobile integration.

v1.0.11(1mo ago)00Apache-2.0PHPPHP ^8.2CI passing

Since May 2Pushed 1mo agoCompare

[ Source](https://github.com/aanugerahahmadf/Plugin-Decorasi-flower)[ Packagist](https://packagist.org/packages/aanugerah/wedding-pro)[ RSS](/packages/aanugerah-wedding-pro/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (10)Dependencies (15)Versions (13)Used By (0)

Wedding Pro Filament Plugin 💍✨
==============================

[](#wedding-pro-filament-plugin-)

**Wedding Pro** adalah solusi *all-in-one* tingkat *enterprise* untuk membangun platform Wedding Organizer profesional menggunakan **Filament PHP** dan **Laravel**. Plugin ini dirancang untuk menjadi backend (Admin Panel) yang sangat kuat, sekaligus menyediakan API lengkap untuk diintegrasikan dengan aplikasi mobile (Android/iOS) via NativePHP.

[![Packagist Version](https://camo.githubusercontent.com/c6ece9564c103af475db1b7ba7f05113049fb5bb84b4b2d2929290fb9b42db4a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f61616e7567657261682f77656464696e672d70726f)](https://packagist.org/packages/aanugerah/wedding-pro)[![PHP Version](https://camo.githubusercontent.com/c9f64f714c636ba27a3bba6dfd52f98426832db1262747efa54b212d16943651/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253545382e322d626c7565)](https://packagist.org/packages/aanugerah/wedding-pro)[![Laravel Version](https://camo.githubusercontent.com/98fa20cc3360d1b01dc6906f19d74252002bce7a23f85e6e5516b8155eec6b89/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c61726176656c2d25354531312e3025323025374325374325323025354531322e3025323025374325374325323025354531332e302d726564)](https://laravel.com)[![Filament Version](https://camo.githubusercontent.com/bfadc1510f0377f1b63091875c9b8385ed61319abfc855efb5174b15898b81da/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f66696c616d656e742d253545332e33253230253743253743253230253545342e30253230253743253743253230253545352e302d6f72616e6765)](https://filamentphp.com)[![License](https://camo.githubusercontent.com/5b60841bea9e11d9d0b0950d690c9bc554e06385634056a7d5d62a15d1a4eabe/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4170616368655f322e302d626c75652e737667)](LICENSE)

---

📑 Daftar Isi
------------

[](#-daftar-isi)

- [✨ Fitur Utama](#-fitur-utama)
- [📋 Persyaratan Sistem](#-persyaratan-sistem)
- [🚀 Instalasi](#-instalasi)
- [⚙️ Konfigurasi Lingkungan (.env)](#%EF%B8%8F-konfigurasi-lingkungan-env)
- [📱 Dokumentasi API Mobile](#-dokumentasi-api-mobile)
- [🗄️ Skema Database](#%EF%B8%8F-skema-database)
- [🤝 Kontribusi](#-kontribusi)
- [📄 Lisensi &amp; Legal (Licensing)](#-lisensi--legal-licensing)

---

✨ Fitur Utama
-------------

[](#-fitur-utama)

Plugin ini membawa fitur-fitur mutakhir yang jarang ditemukan pada plugin Wedding Organizer standar:

### 1. 📸 AI Visual Search (CBIR)

[](#1--ai-visual-search-cbir)

Sistem pencarian cerdas berbasis *Content-Based Image Retrieval*.

- **Cara Kerja**: Pengguna (klien) mengunggah foto referensi dekorasi impian mereka. AI server akan menganalisis fitur visual gambar dan mencari paket dekorasi di database yang paling mirip secara visual.
- **Akurasi &amp; Performa**: Menemukan kecocokan hingga 100% dalam waktu kurang dari 2 detik.
- **Integrasi Kamera**: Langsung ambil gambar melalui kamera perangkat untuk pencarian seketika.

> **Demo:** Upload foto bunga → sistem menemukan paket dengan akurasi tinggi.

[![CBIR Upload](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-upload.png)](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-upload.png)[![CBIR Results](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-results.png)](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-results.png)[![CBIR List](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-list.png)](https://raw.githubusercontent.com/aanugerahahmadf/Plugin-Decorasi-flower/main/docs/cbir-list.png)

### 2. 🤖 AI Consultant Bot

[](#2--ai-consultant-bot)

Asisten chatbot pintar untuk merespon pertanyaan pelanggan.

- **Automasi**: Merespon ketersediaan paket, harga, dan detail layanan secara otomatis.
- **Monitoring**: Seluruh percakapan terekam dan dapat diambil alih oleh admin (organizer) kapan saja melalui panel pesan Filament.

### 3. 💳 Midtrans Payment Gateway Terintegrasi

[](#3--midtrans-payment-gateway-terintegrasi)

Penyelesaian transaksi langsung dari aplikasi.

- **Snap Token**: Menampilkan modal pembayaran yang responsif dan aman.
- **Webhook**: Update status pesanan (Pending, Paid, Failed) secara *real-time* dan otomatis tanpa campur tangan admin.

### 4. 📱 NativePHP Mobile Ready

[](#4--nativephp-mobile-ready)

Arsitektur API dan *service provider* yang dioptimalkan secara khusus untuk berjalan di atas ekosistem **NativePHP**.

- Normalisasi URL otomatis (mengubah `localhost` ke `10.0.2.2` untuk emulator Android).
- Bypass *Content Security Policy* otomatis di perangkat mobile.

### 5. 🌐 Multi-language &amp; Auto Translation

[](#5--multi-language--auto-translation)

Sistem lokalisasi pintar yang mendobrak batasan bahasa.

- **MyMemory API**: Terjemahan teks antarmuka dan konten artikel secara otomatis.
- **Smart Caching**: Hasil terjemahan disimpan untuk meminimalisir beban request API dan mempercepat waktu muat.

---

📋 Persyaratan Sistem
--------------------

[](#-persyaratan-sistem)

Pastikan environment Anda memenuhi spesifikasi berikut sebelum menginstal plugin:

- **PHP**: `^8.2` atau lebih baru
- **Laravel**: `^11.0`, `^12.0`, atau `^13.0`
- **Filament**: `^3.3`, `^4.0`, atau `^5.0`
- **Ekstensi PHP**: `pdo`, `mbstring`, `intl`, `sqlite3` (untuk NativePHP), `exif` (untuk manipulasi gambar)
- **Composer**: Versi 2.x

---

🚀 Instalasi
-----------

[](#-instalasi)

Ikuti langkah-langkah di bawah ini untuk menginstal Wedding Pro ke dalam proyek Laravel Anda.

### Langkah 1: Install via Composer

[](#langkah-1-install-via-composer)

Jalankan perintah berikut di terminal Anda:

```
composer require aanugerah/wedding-pro
```

### Langkah 2: Daftarkan Plugin di Filament Panel

[](#langkah-2-daftarkan-plugin-di-filament-panel)

Buka file `app/Providers/Filament/AdminPanelProvider.php` (atau panel lain yang Anda gunakan) dan tambahkan plugin ke dalam rantai metode `panel()`:

```
use Aanugerah\WeddingPro\WeddingProPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        ->default()
        ->id('admin')
        ->path('admin')
        // ... plugin lain ...
        ->plugin(WeddingProPlugin::make());
}
```

### Langkah 3: Modifikasi Model User (Opsional namun Disarankan)

[](#langkah-3-modifikasi-model-user-opsional-namun-disarankan)

Agar fitur peralihan bahasa dan asosiasi pesanan berfungsi maksimal, tambahkan *trait* berikut ke model `User` bawaan aplikasi Anda:

```
namespace App\Models;

use Aanugerah\WeddingPro\Traits\HasWeddingPro;
use Aanugerah\WeddingPro\Traits\InteractsWithLanguages;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    use HasWeddingPro;
    use InteractsWithLanguages;

    // ...
}
```

### Langkah 4: Jalankan Migrasi &amp; Publish Aset

[](#langkah-4-jalankan-migrasi--publish-aset)

Plugin ini memiliki struktur database yang ekstensif. Jalankan perintah migrasi:

```
php artisan migrate
php artisan filament:assets
```

### Langkah 5: Data Seeding (Contoh Data)

[](#langkah-5-data-seeding-contoh-data)

Untuk melihat bagaimana plugin bekerja dengan data yang terisi penuh (seperti dummy package, organizer, dan artikel):

```
php artisan db:seed --class="Aanugerah\WeddingPro\Database\Seeders\WeddingProSeeder"
```

---

⚙️ Konfigurasi Lingkungan (.env)
--------------------------------

[](#️-konfigurasi-lingkungan-env)

Tambahkan variabel berikut ke dalam file `.env` proyek Laravel Anda:

```
# ==========================================
# MIDTRANS PAYMENT GATEWAY
# Dapatkan kredensial di: https://dashboard.midtrans.com/
# ==========================================
MIDTRANS_MERCHANT_ID=Gxxxxxxx
MIDTRANS_CLIENT_KEY=SB-Mid-client-xxxxxxx
MIDTRANS_SERVER_KEY=SB-Mid-server-xxxxxxx
MIDTRANS_IS_PRODUCTION=false

# ==========================================
# AI SERVER & VISUAL SEARCH (CBIR)
# URL menuju server Python (Flask/FastAPI) Anda
# ==========================================
AI_CORE_URL=http://127.0.0.1:5000
CBIR_API_URL=http://127.0.0.1:5000

# ==========================================
# NATIVEPHP & MOBILE SETTINGS (OPSIONAL)
# ==========================================
NATIVEPHP_RUNNING=false
NATIVE_HOST_IP=10.0.2.2
NATIVE_SERVER_PORT=8000
NATIVE_DB_PROXY_SECRET=your-secret-key
```

---

📱 Dokumentasi API Mobile
------------------------

[](#-dokumentasi-api-mobile)

Plugin ini menyediakan RESTful API *out-of-the-box* untuk dikonsumsi oleh *frontend* terpisah atau aplikasi mobile.

### Endpoint Publik (Tanpa Autentikasi)

[](#endpoint-publik-tanpa-autentikasi)

MethodEndpointDeskripsi`GET``/api/ping`Pengecekan *health status* server.`GET``/api/packages/public`Mendapatkan daftar katalog paket dekorasi.`GET``/api/organizers/public`Mendapatkan daftar profil Wedding Organizer.`GET``/api/settings`Mengambil konfigurasi dinamis aplikasi.### Endpoint Terproteksi (Wajib Bearer Token)

[](#endpoint-terproteksi-wajib-bearer-token)

MethodEndpointDeskripsi`POST``/api/register`Pendaftaran pengguna baru.`POST``/api/login`Autentikasi dan pengambilan token sesi.`GET``/api/profile`Mendapatkan detail informasi *user* yang login.`POST``/api/bookings`Membuat reservasi/pesanan paket baru.`GET``/api/orders`Mengambil riwayat pesanan klien.`POST``/api/cbir/search`Mengirim data `image` (form-data) untuk pencarian visual.`POST``/api/messages/send`Mengirim pesan (chat) ke organizer.`GET``/api/wishlist`Mengelola daftar favorit pengguna.`POST``/api/vouchers/apply`Menerapkan kode promo/voucher ke keranjang.### Konfigurasi Webhook Midtrans

[](#konfigurasi-webhook-midtrans)

Agar status pembayaran diupdate secara otomatis oleh server Midtrans, pastikan Anda menyetel **Payment Notification URL** di dashboard Midtrans ke: `https://domain-anda.com/api/webhooks/midtrans`

---

🗄️ Skema Database
-----------------

[](#️-skema-database)

Ketika Anda menjalankan migrasi, plugin akan membuat ekosistem tabel berikut:

- **Pengguna &amp; Lokalisasi**: `users`, `user_languages`, `translations`
- **Katalog &amp; Organizer**: `wedding_organizers`, `categories`, `packages`, `products`
- **Transaksi &amp; Keuangan**: `orders`, `transactions`, `vouchers`, `carts`
- **Interaksi Pengguna**: `reviews`, `wishlists`, `histories`
- **Komunikasi &amp; Konten**: `fm_inboxes`, `fm_messages`, `articles`, `banners`

---

🤝 Kontribusi
------------

[](#-kontribusi)

Kami sangat menyambut kontribusi dari komunitas *open-source*! Jika Anda menemukan kutu (bug), memiliki ide fitur baru, atau ingin memperbaiki dokumentasi:

1. Lakukan *Fork* pada repositori ini.
2. Buat *branch* fitur Anda (`git checkout -b fitur/FiturLuarBiasa`).
3. Tulis kode Anda beserta *unit test* jika memungkinkan.
4. Lakukan *Commit* perubahan Anda (`git commit -m 'Menambahkan FiturLuarBiasa'`).
5. Dorong ke *branch* Anda (`git push origin fitur/FiturLuarBiasa`).
6. Buka **Pull Request** di GitHub.

Seluruh *Pull Request* harus melewati proses CI (Continuous Integration) menggunakan PHPUnit untuk memastikan tidak ada fitur yang rusak.

---

📄 Lisensi &amp; Legal (Licensing)
---------------------------------

[](#-lisensi--legal-licensing)

Perangkat lunak ini adalah sumber terbuka (Open-Source) dan dilisensikan di bawah pengawasan **[Apache License 2.0](https://opensource.org/licenses/Apache-2.0)**.

### Hak Pengguna (What You Can Do)

[](#hak-pengguna-what-you-can-do)

Berdasarkan Apache License 2.0, Anda diberikan kebebasan untuk:

- **Komersial**: Menggunakan plugin ini untuk proyek komersial dan tujuan bisnis.
- **Modifikasi**: Mengubah kode sumber untuk menyesuaikan dengan kebutuhan Anda.
- **Distribusi**: Membagikan kode sumber asli atau yang telah dimodifikasi.
- **Paten**: Menggunakan lisensi paten eksplisit yang diberikan oleh kontributor proyek ini (jika ada).

### Kewajiban Pengguna (Conditions)

[](#kewajiban-pengguna-conditions)

- **Pemberitahuan Lisensi**: Anda harus menyertakan salinan lisensi Apache 2.0 dan pemberitahuan hak cipta dalam setiap salinan perangkat lunak yang Anda distribusikan.
- **Pemberitahuan Perubahan**: Jika Anda memodifikasi file *source code*, Anda wajib menyertakan pemberitahuan (notice) yang menyatakan bahwa Anda telah mengubah file tersebut.
- **File NOTICE**: Anda dilarang menghapus atau mengubah file `NOTICE` (jika ada) dan harus menyertakannya saat didistribusikan ulang.

### Sanggahan Hukum (Disclaimer of Warranty &amp; Limitation of Liability)

[](#sanggahan-hukum-disclaimer-of-warranty--limitation-of-liability)

> PERANGKAT LUNAK INI DISEDIAKAN "APA ADANYA" (AS IS), TANPA JAMINAN APA PUN. PENGARANG (AUTHOR) TIDAK BERTANGGUNG JAWAB ATAS KLAIM, KERUSAKAN, ATAU KEWAJIBAN LAINNYA.

### Lisensi Pihak Ketiga (Third-Party Licenses)

[](#lisensi-pihak-ketiga-third-party-licenses)

Harap dicatat bahwa plugin ini mengimpor dan bergantung pada beberapa perpustakaan pihak ketiga (*dependencies*). Sebagian besar *library* pihak ketiga yang digunakan berlisensi **MIT License** (seperti Laravel, Filament, Spatie, dan Midtrans). Dengan menggunakan plugin ini, Anda juga setuju untuk mematuhi lisensi dari pustaka pihak ketiga tersebut.

---

 Dibuat dan dipelihara dengan ❤️ oleh [Anugerah Ahmad Fachrurochim](https://github.com/aanugerahahmadf).
 *Solusi Sistem Informasi Pernikahan Cerdas Masa Depan.*

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance92

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

12

Last Release

37d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/279ed64727983279894ac66e7acff76b83947ddec8c587aa6bbefad50d8e8747?d=identicon)[aanugerahahmadf](/maintainers/aanugerahahmadf)

---

Top Contributors

[![aanugerahahmadf](https://avatars.githubusercontent.com/u/194451428?v=4)](https://github.com/aanugerahahmadf "aanugerahahmadf (35 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/aanugerah-wedding-pro/health.svg)

```
[![Health](https://phpackages.com/badges/aanugerah-wedding-pro/health.svg)](https://phpackages.com/packages/aanugerah-wedding-pro)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3325.1M337](/packages/psalm-plugin-laravel)[spatie/laravel-health

Monitor the health of a Laravel application

87311.3M149](/packages/spatie-laravel-health)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3913.7k](/packages/rawilk-profile-filament-plugin)[bezhansalleh/filament-google-analytics

Google Analytics integration for FilamentPHP

208175.5k8](/packages/bezhansalleh-filament-google-analytics)[harris21/laravel-fuse

Circuit breaker for Laravel queue jobs. Protect your workers from cascading failures.

24740.3k](/packages/harris21-laravel-fuse)[hydrat/filament-table-layout-toggle

Filament plugin adding a toggle button to tables, allowing user to switch between Grid and Table layouts.

63105.4k2](/packages/hydrat-filament-table-layout-toggle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
